微信回复自动注册及获取微信昵称修改

weixin_guange
yuanke 9 years ago
parent 3051b82ac2
commit 88e23dca80

@ -21,8 +21,9 @@ module Mobile
raise "无法获取到openid,请在微信中打开本页面" unless openid
us = UsersService.new
#login mail password
openid_length = openid.length
#根据openid生成一个用户名
openid_length = openid.length
login = openid[0..10]+openid[openid_length-3..openid_length-1]+Time.now.to_i.to_s
access_token = session[:access_token]
@ -32,25 +33,18 @@ module Mobile
Rails.logger.info session
if access_token && refresh_token
refreshinfo = Wechat.api.web_refresh_access_token(refresh_token)
#先刷新下access_token 已防止过期
refreshinfo = Wechat.api.web_refresh_access_token(refresh_token)
access_token = refreshinfo["access_token"]
refresh_token = refreshinfo["refresh_token"]
session[:access_token] = access_token
session[:refresh_token] = refresh_token
require "open-uri"
#如果有GET请求参数直接写在URI地址中
uri = 'https://api.weixin.qq.com/sns/userinfo?access_token='+access_token+'&openid='+openid+'&lang=zh_CN'
userinfo = nil
open(uri) do |http|
userinfo = JSON.parse(http.read)
end
# userinfo = Wechat.api.web_userinfo(access_token,openid)
#获取用户信息
userinfo = Wechat.api.web_userinfo(access_token,openid)
Rails.logger.info "userinfo!!!!!!!!!"
Rails.logger.info userinfo
Rails.logger.info userinfo["nickname"]
name = userinfo["nickname"]
else
name = openid[0..3]+"***"+openid.last

@ -132,14 +132,23 @@ module Wechat
end
def web_userinfo(access_token,openid)
params = {
access_token: access_token,
openid: openid,
lang: "zh_CN"
}
# get 'https://api.weixin.qq.com/sns/userinfo',params: params
get 'userinfo', params: params, base: OAUTH2_USERINFO
# params = {
# access_token: access_token,
# openid: openid,
# lang: "zh_CN"
# }
#
# # get 'https://api.weixin.qq.com/sns/userinfo',params: params
# get 'userinfo', params: params, base: OAUTH2_USERINFO
require "open-uri"
#如果有GET请求参数直接写在URI地址中
uri = 'https://api.weixin.qq.com/sns/userinfo?access_token='+access_token+'&openid='+openid+'&lang=zh_CN'
userinfo = nil
open(uri) do |http|
userinfo = JSON.parse(http.read)
end
userinfo
end
end
end

Loading…
Cancel
Save