受欢迎的博客标签

微信小程序-微信小程序客户端请求和服务端ASP.NET Core WebApi认证授权方式Jwt token实现

Published

微信小程序客户端

step 1.申请token:给用户在小程序上准备一个登录页面,用户输入他的用户名还有密码,可以申请登录。

step 2.服务器端颁发token:后端服务收到登录请求,验证用户输入的登录信息是否有效,如果有效就给用户签发一个 JSON Web Token

step 3.获取token:小程序收到签发的 Token 把它存储在自己的 Storage 里,下回用户再请求需要权限的资源的时候,可以带着签发的这个 Token.

step 4.服务器验证token:服务端那里会验证 Token 的有效性,然后决定是否要执行用户请求的动作。

 

step 1.申请token:给用户在小程序上准备一个登录页面,用户输入他的用户名还有密码,可以申请登录。

step 2.服务器端颁发token:后端服务收到登录请求,验证用户输入的登录信息是否有效,如果有效就给用户签发一个 JSON Web Token

 

step 3.获取token:小程序收到签发的 Token 把它存储在自己的 Storage 里,下回用户再请求需要权限的资源的时候,可以带着签发的这个 Token.

小程序得到了 Token 以后要把它存储在 Storage 里面,Storage 就是一个名值对的存储,它只能存储字符串,服务器签发返回来的 Token 是个对象,所以我们可以把这个 Token 对象用 JSON.stringify 处理一下,然后再存储在 Storage 里。

const _token = JSON.stringify(token)
wx.setStorageSync('jwt', _token)

服务端签发过来的 Token ,除了 Token 本身,还有一些用户相关的信息,比如头像,名字,邮件等等。我们可以直接在小程序的页面上利用这些数据。

step 4.小程序用户执行请求,要带上一个 Authorization 这个 Header,对应的值是 Bearer 空格后面再加上具体的 Token 的值。

wx.request({
  url: `${ API_BASE }/${ API_ROUTE }`,
  method: 'POST',
  header: {
    'Authorization': `Bearer ${ this.data.jwt.token }`
  },
  data: {
    ...this.data.entity
  },
  success: (response) => {
 
  }
})

step 5.服务器验证token:服务端那里会验证 Token 的有效性,然后决定是否要执行用户请求的动作。

 

 

实现微信小程序与.net core应用服务端的无状态身份验证

https://www.toutiao.com/i6480281834511925774/

https://ninghao.net/blog/5530

 

微信小程序wx.request发送与服务端接受

https://www.cnblogs.com/JJDJJ/archive/2017/08/07/7299274.html