小程序容器助力企业在金融与物联网领域实现高效合规运营,带来的新机遇与挑战如何管理?
439
2023-11-12
学习改文章,您就有清晰的微信小程序授权思路,前后端遵循开发规矩即可
当然更加完善的实现办法要去看官方文档的推荐
学习前建议看看授权大白话理解-微信小程序获取授权
按照最常见的,点击一个按钮进行登录
其中code才是我们需要的
代码展示
有了code之后,我们应该用wx.request( )发送一个请求把他传给后端,因为后端才可以通过这个code来进行登录凭证
后端要通过微信提供的接口,然后把从前端拿到的code,再转发发送到微信服务器获得信息微信服务器提供的接口是:https://api.weixin.qq.com/sns/jscode2session?appid={0}&secret={1}&js_code={2}&grant_type=authorization_code
后端就是通过这个发送get请求给微信服务器的上面的appid , secret , js_code 后面的三个参数就是要替换的appid是应用id,通过登录微信公众号后台去获取的secret是应用秘钥,也是通过微信公众号后台去获取的js_code就是我们前段发送wx.request()传过来的code数据为什么这么做?因为appid,secret是微信给每一个开发者账号独一无二的"身份证",让你们合法合规的去获取用户的微信账号信息,如果你们敢乱来的话,那就…,微信小程序也是实名了的。嗯…这时候后端通过get请求获取到了官方给你们返回的用户信息了(返回的信息里面openid和session_key 等信息),我们就是要取openid和session_key这两个信息(openid是独一无二的)拿到这两个数据后后端服务器要保存,然后返回一个token给前端(这个token能和openid和session_key关联就可以,但是非常不推荐直接返回openid 和 session_key)拿到token,就存进storage里面了,有这个token且未过期就代表你是合法的了,你可以结合微信授权用户信息–wx.getUserInfo( )来拿他个人具体信息了
微信服务器返回的res就是他本人授权登录的账号信息,但是res里面有很多信息,想要她的具体数据,我们需要哪一些?
1. encrytedData:(这一段非常长的数据正是用户信息严格加密后的数据)
2. iv:是加密算法的初始向量
我们拿到上面的encrytedData,iv,再加上之前向后端要的能和openid、session_key关联上的token,一并wx.request( )发给后端
用他传过来的【encrypted 结合 iv】 对 【openid 和session_key】进行解密
然后解密得到重要的数据,返回给了前端
在微信文档里面都有了 — 点我跳转去看
官方文档安排的明明白白的
疑问2:-了里面有什么类型的后端代码?
1.有以上四种类型的代码,可以直接复制粘贴来跑,按照他的接口就可以
2. 像Java之类的,百度上面有很成熟好用的解密类,百度就可以-
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~