一对一免费咨询:189-6833-3365

背景有幸参加微信小程序(procedure)的内测,由于公司之前已经有自己的服务大号,积累转化了大量的会员所以在做小程序时,要实现会员的互通,想到的是 unionid开发文档wx。login(OBJECT)调用接口(interface)获取(obtain)登录凭证(code)进而换取用户 。。
背景
有幸参加微信小程序的内测,由于公司之前已经有自己的服务大号,积累转化了大量的会员
所以在做小程序(procedure)时,要实现会员的互通,想到的是 unionid


开发文档wx。login(OBJECT)
调用接口获取登录凭证(code)进而换取用户登录态信息,包括用户的唯一标识(openid)
及本次登录的
会话密钥(session_key)
参见:httPHOTOSHOP://mp。weixin。qq。com/debug/wxadoc/dev/api/api-login。htmlt=1474887500719
wx。宁波小程序开发对于用户来说,能够节约使用时间成本和手机内存空间;对于开发者来说也能节约开发和推广成本。getUserInfo(OBJECT)
获取用户信息,需要先调用
wx。login
接口(interface)
其中需要的unionid在调用成功返回的
参见:httPHOTOSHOP://mp。宁波微信小程序开发是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或者搜一下即可打开应用。weixin。qq。com/debug/wxadoc/dev/api/open。html?t=1474887500618
个加密数据(data),解密算法
参见:httPHOTOSHOP://mp。weixin。qq。com/debug/wxadoc/dev/api/signature。html


实现code 换取 session_key
前端先调 wx。宁波微信小程序开发是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或者搜一下即可打开应用。login 得到code
后端换取session_key和openid, openid返回前端,session_key保存(缓存(cache))解密用
注意:一个code只能换取一次;
再次调用
wx。login, 会导致上一次的 session_key 失效,解密出来的都是乱码
  2。
解密
前端先调 wx。getUserInfo
得到encryptData
用login返回的openid,encryptData 调后端解密
刚开始按开发文档,用C# 系统自带AES解密失败
报“填充无效,无法被移除”异常
在网上扒拉了一圈,也没找到有用的信息,最终在github上,找带了参考代码,自己再改改,才解密成功

结语
代码本身没啥牛逼的,希望贴出来能对后面的开发伙伴有所帮助 :)

© 2008-2019 浙江东美 ALL RIGHTS RESERVED. XMLBAIDU

免责申明:部分内容来自互联网,若侵犯了您的权益,请告知我们删除!

浙ICP备19019195号-1
找网站建设公司就上东美!
189-6833-3365
tel+86-189-6833-3365