3

业务中前后端分离下的微信授权流程记录

这个是微信授权的流程

https://mp.weixin.qq.com/wiki...

https://mp.weixin.qq.com/wiki...

我觉得微信的文档授权流程还算清晰易懂,可是不太清楚具体是哪部分前端做,哪部分后端做

导致在业务中,折腾了不少时间,特此记录一下业务实践。

  • 第一步,当进入需要授权的页面时,「前端」向「微信」发起授权请求,前端需要提供redirect_uri,这个redirect_uri就是后端提供的一个接口地址
  • 第二步,微信的授权页面会被唤出,用户如果点击【同意授权】,「微信」会跳转至 redirect_uri/?code=CODE&state=STATE
  • 第三步,「微信」会跳转至 redirect_uri/?code=CODE&state=STATE,其实就等于微信访问了后端的接口,后端可以取到code

之后一系列操作,后端根据业务需求拉取信息,比如凭借code换取access_token,然后拉取openid等用户信息

  • 第四步,后端拿到这些信息之后如何返回给前端呢,可以让后端重定向到前端页面,并把openid等信息,以?的形式,挂在url后面
  • 第五步,前端在需要授权的页面,从url的查询字符串里,获取openid等用户信息就可以啦

需要注意redirect_uri是需要公众号后台配置的。并且不带开头http

在我们这个方案当中,redirect_uri 配置的是后端的某一个接口地址


Ziwei
4.1k 声望420 粉丝

前端程序员