用户登录

自由学三年,把想法变成现实。33 折优惠(最后 7 天), 现在订阅 →

绑定微信帐号,指的就是把用户的微信里面关于用户的相关信息存储在我们自己的服务端 .. 这样下回用户如果想用微信登录小程序,我们就知道他是谁了 .. 可以直接给用户签发 Token,让用户登录 ..

先准备一些数据,然后把它们发送到后端服务接口,这个接口提供的功能等会儿我们再去创建 ..

可以先在这个用户档案页面上,添加一个方法 .. 名字可以是 weixinBind .. 这个方法可以用解构的形式去添加几个参数 .. userInfo ,userId,还有 token .. 等于 obj .. 意思就是,这个方法接收一个对象参数 .. 然后直接把对象里面的 userInfo ,userId 还有 token 解构出来用 ..

这里的 userInfo 表示的是从微信那里用户授权获取到的用户相关信息 .. userId 应该是这个用户在我们网站上的 id 号 .. token 是我们验证了用户身份以后,给用户签发的 token ..

session_key,openid

绑定微信帐号,比较重要的东西是用户的 openid ,这个 openid 是微信用户在我们的小程序上的唯一标识 .. 把它跟网站用户的信息绑定在一起,以后就可以根据 openid 的值来判断用户在网站上到底是谁了 ..

这个 openid 的值要在服务端向微信服务接口去请求,请求的时候,要带着一个登录码,这个登录码在小程序这里可以使用 wx.login 这个接口得到 ..

在这个 weixinBind 方法里,用一下 wx.login .. 一个对象参数 .. 成功以后,调用 success ,添加一个这样的方法 ..

得到的响应可以叫它 login ... 这个响应里面的 code 属性就是我们需要的登录码,也就是一个登录的凭证 ..

里面再用一下 wx.request,发出一个请求 .. 先配置一下请求的 url .. 一个 API_BASE .. 再加上 API_ROUTE_WEIXIN_BIND ..

在页面的上面可以定义一下它们的值 .. API_BASE 的值就是网站的地址 .. 后面加上一个 wp-json ...

API_ROUTE_WEIXIN_BIND .. 它的值可以是 weixin/v1/bind .. 假设它就是绑定微信帐号用的服务端接口 .. 等会儿我们再去定义这个接口的功能 ..

再继续配置这个请求 .. 请求的 method,也就是方法,可以是 POST .. 或者 PUT 也行 .. 因为这个请求是要去更新用户相关的信息 ..

请求得验证用户的权限 .. 添加一个 header .. 里面添加一个 Authorization .. 对应的值是 Bearer 空格,再加上 token 的值 ... 这个 token 的值是成功验证了用户身份以后,我们的后端服务给用户签发的 ..

然后是 data 属性 .. 配置一下要发送的数据 .. 添加一个 code .. 这个 code 就是调用 wx.login 返回的登录码 .. 它的值应该是 login 下面的 code 属性的值 ..

再添加一个 userInfo .. 还有一个是 userId ..

请求成功 .. 调用 success 方法 .. 添加一个这样的方法 .. 接收一个 response 参数 .. 然后在方法里,我们可以把得到的响应输出到控制台上检查一下 ...

使用

在这个获取用户相关信息的成功回调里,用一下刚才定义的 weixinBind .. 一个对象参数 .. userInfo 是微信用户相关的信息 .. 这里就是得到的 response 的值 ..

userId 是用户在网站上的 id 号,可以用一下 this.data.user_id ..

token 的值是 this.data.token ..

在这个 onShow 方法里,已经把 jwt 从小程序的全局数据里拿出来放到页面自己的数据里了 ..

不过现在签发的 jwt 里面,现在并不包含用户的 id 号 ..

这得再去修改一下后端服务接口 ...

绑定微信:请求后端服务保存微信用户的相关信息《 微信小程序:微信绑定 #6 》

统计

10670
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点