微信小程序判断登录和登录逻辑梳理
编辑:小飞燕 发布时间:2021-04-16 11:00:27
关于小程序判断的信息,微信小程序商城已经有所提及。带来微信小程序判断登录的相关信息,梳理小程序的登录逻辑,希望对大家有所帮助。
登录时序图。png
微信两个小程序的api接口获取的信息是:login和getuserinfo
信息返回。png
注册小程序/登录
小程序:
通过上面两个api wx . log in和wx.getuserinfo获取相应的信息,通过上层接口发送到你的服务器。
要传输的信息有七个参数:
appid小程序的唯*标识
秘密小程序的应用程序秘密
js_code //wx .登录时获取的登录代码,用于以后获取session_key
//以下两个参数由用户服务器签名以验证用户信息
签名使用sha1(rawdata sessionkey)获取一个字符串来验证用户信息。
rawdata不包含敏感信息的原始数据字符串,用于计算签名。
//以下两个参数用于解密openid和unionid
加密数据包括敏感数据在内的完整用户信息的加密数据
iv加密算法的初始向量
当然可以归结为以下三个参数。
签名验证的其他参数可以省略,而appid和secret可以直接写入服务器。
js_code //wx .登录时获取的登录代码,用于以后获取session_key
加密数据包括敏感数据在内的完整用户信息的加密数据
iv加密算法的初始向量
服务器处理逻辑
相关信息传输到服务器后,服务器
1.先去微信服务器根据js_code获取session_key
2.(这个步骤可以省略)使用sha1(rawdata sessionkey)获取字符串,判断是否与签名值相同。如果相同,则用户信息正确,然后继续下一步。如果不同,说明用户信息已经被篡改或过期。
3.然后根据解密算法进行解密(输入参数有appid、sessionkey、加密数据、iv、返回一个jsonobj),得到openid、unionid等信息,执行服务器端注册/登录操作。
4.注册/登录操作逻辑完成后,我们的服务器的sessionid(或其他令牌)和用户信息被返回给客户端。
其中,服务器获取session_key的请求是:
(小写是固定的,大写将被替换)
https://api.weixin.qq.com/sns/jscode2session?appid=appid secret=secretjs _ code=jscodegrant _ type=authorization _ code
回到:
//json包正常返回
{
openid': 'openid ',session_key': 'sessionkey '
过期时间_in': 2592000
}
//出现错误时返回json包(例如代码无效)
{
errcode': 40029,errmsg': '无效代码'
}
相关解密算法:
https://mp.weixin.qq.com/debug/wxadoc/dev/api/signature.html
注意:的样例代码中有node、c、php、python,没有java。
需要服务器返回的信息:
session id/令牌登录状态id
userinfo: jsonobject,我们平台上用户的信息,和getpersonalinfo接口返回的信息是一样的。
比较后,登录操作被封装为一个方法,必要时可以调用该方法
//方法比较后被外界调用
函数登录{
console . log(' loging ..');
//调用登录界面
wx.login({
success:函数(e) {
console . log(' wxlogin successed . ');
var code=e.code
wx.getuserinfo({
成功:功能(res) {
console . log(' wxgetuserinfo successed . ');
var encrypted data=encodeuricomponent(res . encrypted data);
thirdlogin(code,encrypteddata,res . iv);//调用服务器api
}
})
}
});
}
函数thirdlogin(code,encrypteddata,iv){
var url=' eeee/xxx/log in/tttt ';
var params=新对象;
params.code=code
params . encrypted data=encrypted data;
params.iv=iv
buildrequest(new object,url,params,{
onpre:函数(页面){},onsuccess:function (data){
console.log('我的登录成功.');
console.log(数据);
getapp . global data . session _ id=data . session _ id;
getapp . global data . uid=data . uid;
getapp . global data . islogin=true;
},
onerror :函数(msgcanshow,code,hiddenmsg){
}
}).发送;
}
下面是题目的开头。微信账号创建店铺小程序有哪些常见问题?标题到此结束
微信账号创建店铺小程序有哪些常见问题?当我们知道什么是商店小程序时。如何打开商店小程序?之后我们接下来会遇到的就是在创建store小程序的过程中可能会遇到的问题。小编整理的这篇文章,主要是用来回答微信号在店铺里创建小程序的常见问题。
1.一个微信账号可以创建多少个店铺小程序?
一个微信账号只能创建一个店铺小程序,一个店铺小程序下可以添加多个店铺页面。
2.如何填写店铺小程序的业务名称?
商店小程序的商家名称就是小程序名称,商家可以自定义。需要注意以下几点:
1)一旦填写,不支持修改。请认真填写。
2)商家名称不能与现有小程序同名。而且,一旦名称被商家名称使用,新创建的小程序就不能再使用了。
3)商户名称会显示在小程序历史列表、介绍页面等。
3.创业需要提交哪些资质?
您必须根据您选择的类别提供相应的资格。具体类别和所需资质请参考本文结尾。
4.如何证明店铺的经营资质科目与微信账号科目有关?
我们只需要提供店铺的经营资质信息和主体相关证明材料,我们会审核微信账号主体相关信息。
5.创建一个商店小程序。怎么用?
可以在微信账号介绍页面设置店铺小程序,自定义菜单,插入图形消息群发。也可以在店铺详情里获取店铺二维码,在微信上传播,或者线下发布。同时,商店小程序还支持卡券、wi-fi和广告服务的应用。
上一篇:java富有创意的小程序怎么编写
下一篇:微信小程序input赋值
猜你喜欢
-
2个微信小程序判断字符串技巧327人喜欢
关于微信小程序字符串,小编之前好像从来没有提到过,所以有不少的小程序开发者都在询问相关问题,接下来就看看微信小程序判断字符串怎么弄。…
更新时间:2020-10-03 09:03:09
-
微信小程序判断登录和登录逻辑梳理91人喜欢
关于小程序判断的信息,微信小程序商城已经有所提及。今天带来微信小程序判断登录的相关信息,梳理小程序的登录逻辑,希望对大家有所帮助。登录时序图。png微信两个小程序的api接口获取的信息是…
更新时间:2021-04-16 11:00:27
-
微信小程序判断字符串怎么弄20人喜欢
微信小程序商店介绍了很多关于小程序字符串的信息。今天,小编想给大家补充一下如何通过微信小程序判断字符串以及一些其他关于小程序的信息。我们提供了新的开放功能,开发人员可以快速开发一个…
更新时间:2021-04-16 10:44:54
-
微信小程序判断为空怎么办15人喜欢
经常有人举报微信小程序在开发小程序时被判断为空。今天,小编给大家带来了一些关于小程序开发的信息,也提到了这个问题。请仔细看看。1.发展思维需要改变jquery在操作dom方面非常有用和方便。但…
更新时间:2021-04-16 10:54:42
-
微信小程序判断空值11人喜欢
很多人不太懂判断微信小程序的null值。事实上,关于小程序的传递和取值的信息对于小程序开发来说更重要。让我们来看看以下信息。微信小程序的传值和取值有两种方法,取值也有相应的方法。1.设置…
更新时间:2021-04-16 10:59:18