同一微信开放平台帐号下不同应用的账号问题
都知道用unionID即可识别,但下单支付的时候是需要传openid的,那就代表支付的时候,要么现请求获取openid,要么存多个openid在数据库
如user表A用户,有openid_xcx,openid_gzh,unionid等字段
小程序获取openid的流程
1、小程序端执行内置方法wx.login获得code
2、带着code请求自己的api,appid+appsecret+code组合成小程序wx_login_url
3、curl_get方式访问wx_login_url,返回json数据,含openid
公众号获取openid的流程
1、获取code:前端先获取当前地址,传给api,api拿到你的当前地址,通过微信提供的接口,返回一个拼接上参数(appid,redirect_uri…)的微信端授权地址,这时候前端跳转该地址显示微信授权页面,用户授权之后携带code跳转到当前页。
2、获取openid:截取地址获取code传递给API,API拿着code向微信服务器请求,获取access_token和openod并且存到数据库和缓存,返回token
- access_token用于继续获取头像等信息 (需非静默方式)