前后端分离VUE+PHP,开发微信公众号项目

欢迎大家访问我的博客 www.kevink.club


原文链接:http://www.kevink.club/archives/270.html

在前后端分离的时代,项目再做成php中心化的形式,有点太单调了, 并且随着业务量的扩增,想将应用服务做到水平扩展就需要解决一个重要的问题就是```用户授权```。 

先说一下微信公众平台上给出的授权步骤

1 第一步:用户同意授权,获取code

2 第二步:通过code换取网页授权access_token

3 第三步:刷新access_token(如果需要)

4 第四步:拉取用户信息(需scope为 snsapi_userinfo)

5 附:检验授权凭证(access_token)是否有效

 

### 老的用户授权实现

用户授权,通过mvc , 先通过controller层,在controller层做了用户的授权判断,code获取,换取access_token,获取用户信息, 进行用户登录返回token,或者保存session

目的: 公众号的appid, secret 是非常重要的,需要由服务器端保存;截获code, access_token 及换取用户信息方便,如果controller层的验证失败,则进入不了页面。

 

### 前后端分离方式

vue 获取code, 将code 传入接口, 由服务器进行access_token获取, 获取用户信息, 进行用户登录返回token. 

目的:前端获取code, 完成用户授权后code 获取, 然后将code 传给接口, 获取用户信息, 保证了appi, secret 安全性, 返回用户唯一验证码token.  

缺点: 前端获取code时,需要知道appid, 直接在vue里写死, 或者通过接口获取appid, 其实是一样的,都能通过抓包得到, 不过只暴露一个appid应该没有什么关系。 

这种方式可行, 用户登录通过token 验证,不要存入session, 这样方便我们做负载均衡时,session 不在同一个服务器不能登录的问题。

 

 

 

你可能感兴趣的:(PHP,微信)