记小程序登录
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了记小程序登录,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2938字,纯文字阅读大概需要5分钟。
内容图文
小程序登录
1.Web登录涉及到的知识点
1.1HTTP无状态性
HTTP是无状态的,一次请求结束,连接断开,下次服务器再收到请求,它就不知道这个请求是哪个用户发过来的。当然它知道是哪个客户端地址发过来的,但是对于我们的应用来说,我们是靠用户来管理,而不是靠客户端。所以对我们的应用而言,它是需要有状态管理的,以便服务端能够准确的知道http请求是哪个用户发起的,从而判断该用户是否有权限继续这个请求。这个过程就是常说的会话管理。
1.2HTTP报文
用于HTTP协议交互的信息被称为HTTP报文。客户端的HTTP报文叫请求报文,服务端的HTTP报文叫响应报文。
请求报文 是由请求行(请求方法、协议版本)、请求首部(请求URI、客户端信息等)和内容实体(用户信息和资源信息等,可为空)构成。
响应报文 是由状态行(协议版本、状态码)、响应首部(服务器名称、资源标识等)和内容实体(服务端返回的资源信息)构成。
2.小程序基于Session的用户登录
2.1 基于Session的用户认证机制
大致原理类似于会所消费,你刚过去,人家不知道你是谁(相当于没登录的状态),后来你办了张卡(相当于用户登录),你有了一张卡(这张卡就是SessionID),店家记录你的用户信息(将你的用户信息放到Session中)。你在这家店消费,带上你的卡(相当于带上SessionID),店家就能根据这张卡查到你的用户信息 ,知道你是谁。
会员卡就相当于SessionID
你一般把会员卡装在钱包里,钱包(cookie)
店家把你的用户信息存入Session,一个SessionID对应一个Session
注意:以上所描述的只是一次会话(session)的过程,不涉及客户端cookie丢失,服务器端定时删除session等问题。更不涉及有人抢了你的会员卡,或者伪造会员卡等安全问题。
2.2 小程序没有cookie
是的,小程序是没有cookie的,没有钱包,就不配拥有会员卡了吗?当然不!!!别管我有没有钱包(cookie),只要我消费(请求)的时候带上会员卡(sessionID)不就完事了吗。
每次HTTP请求,cookie放在HTTP请求头(Request Header)中的,sessionID是放在cookie中的。
大致做法:
- 请求服务器端,获取sessionID,存起来。
- 封装wx.request:从存储中取出sessionID,放到Request Header中,前端每次请求都使用这个封装的wx.request,服务器端以前是从Request Header中取sessionID,现在一样,所以后端代码不需要动。
适用于如下开发情况:服务端以前写好了,网页端移植到小程序
封装大致如下,我这里使用了uni-app,主要是header里面的内容,网上有很多比我这个完善的
export const request=(options)=>{
return new Promise((resolve,reject)=>{
uni.request({
url:options.url,
method:options.method||'GET',
data:options.data||{},
header:{
Cookie:uni.getStorageSync("SESSION"),
'content-type':options.dataType||"application/json"
},
success:(res)=>{
resolve(res)
},
fail:(err)=>{
reject(err)
}
})
})
}
3.微信公众平台官方登录示例
如果你需要使用微信的授权登录,你就需要这个。如果你不需要授权登录,就跟网页端一样,使用账号密码登录,你就不需要这个。
授权登录具体的实现方式各式各样的都有,就不讲了。每个微信账号对应一个openId,一般都需要将openId跟用户的账号信息绑定。
4.记住密码功能
如果不做授权登录,又不想每次进入小程序都输入账户密码再登录,可以将用户的账号密码存储在客户端本地,每次进入小程序读取账号密码进行登录跳转,略过登录页面。
内容总结
以上是互联网集市为您收集整理的记小程序登录全部内容,希望文章能够帮你解决记小程序登录所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。