作用:开发者服务器获得获得code、openId、session_key
文件位置:app.js
就是说有人打开小程序开发者就知道谁来了
// 登录
wx.login({
success: res => {
console.log(res.code)//这就是code
// 发送 res.code 到后台换取 openId, sessionKey, unionId
}
})
先看一下有没有code
修改代码
wx.login({
success (res) {
if (res.code) {
//发起网络请求
wx.request({
url: "https://test.com/onLogin",
data: {
code: res.code
}
})
} else {
console.log("登录失败!" + res.errMsg)
}
}
})
通过微信公众号登录到小程序后台
开发 — 开发管理 — 开发设置 — 开发者ID
就有AppID(小程序ID)、AppSecret(小程序密钥)
登录到微信开放平台加入自己的小程序
python — flask 例子
@app.route("/onLogin", methods=["GET","POST"])
def OnLogin():
code = request.args["code"]#获得code
url1 = "https://api.weixin.qq.com/sns/jscode2session?appid=%s&secret=%s&js_code=%s&grant_type=authorization_code"%(app.config["WEIXIN_OPEN_APP_ID"],app.config["WEIXIN_OPEN_APP_SECRET"],code)
response1 = urllib.request.urlopen(url1)#发送请求,只传url说明用post
json_str1 = response1.read()#获取响应数据,微信返回的json数据
respond_dict1 = json.loads(json_str1)
openid = respond_dict1.get("openid")
session_key = respond_dict1.get("session_key")
print(openid)
print(session_key)
return "啥"
session_key不要直接发到服务器外,要加密
session就可以自己去定义了
onLoad: function() {
let app = getApp();
app.onLaunch()
//其他页面要做的事//
},