一直都是做单独的小程序开发,这次接触来开放平台,也注册好了,也创建了应用,授权了自己的测试的小程序。
然后通过开发者工具创建了一个小程序,也能将代码上传到开放平台的草稿箱。
在获取openid碰到问题,一直不理解开放平台的概念
wx.login({
success: res => {
wx.showLoading({
title: '加载中',
})
wx.request({
url: config.domain+'/api/login',
data: {
code: res.code,
},
method:'post',
success(res) {
wx.hideLoading()
self.globalData.user = res.data
}
}) // console.log(config)
// 发送 res.code 到后台换取 openId, sessionKey, unionId
}
})
小程序这里只会往我的服务器发送一个code,服务器如何知道这是哪个小程序发送过来的?
普通的开发模式都是针对一个小程序开发,appid都是固定的。
使用限制
网络请求的
referer
header 不可设置。其格式固定为https://servicewechat.com/{appid}/{version}/page-frame.html
,其中{appid}
为小程序的 appid,{version}
为小程序的版本号,版本号为0
表示为开发版、体验版以及审核版本,版本号为devtools
表示为开发者工具,其余为正式版本;
服务器根据 referer 获取 appid
如果要获得openid,config.domain+’/api/login’这个接口负责将微信传过来的code进行校验后获取openid
code2Session
本接口应在后端服务器调用,详细说明参见后端API。
登录凭证校验。通过 wx.login() 接口获得临时登录凭证 code 后传到开发者服务器调用此接口完成登录流程。更多使用方法详见 小程序登录。
https://developers.weixin.qq.com/miniprogram/dev/api/code2Session.html