项目多,微信授权回调地址来回变怎么办?

前言

  由于公司项目用到微信授权,但是项目很多,对应的公众号也不一样。而且暂时使用的是公众号进行配置回调域名来做用户授权。但是,有时候一个公众号可能对应多个回调域名,所以为了让回调域名统一话,增加中转站点来支持多域名回调。

流程解读

  

授权流程

  1. 假如现在有四个站点都需要使用同一个公众号进行微信授权。回调域名分别是:domain1/callback,domain2/callback,domain3/callback,domain4/callback。现在我们发起授权请求到中转站
  2. 中转站接收到授权请求之后,根据不同的站点来源标识请求(3)API,获取授权跳转地址,跳转到微信授权服务(4)。并且将站点来源标识保存到cookie中。
  3. 由于微信公众号配置的回调域名为中转站的域名(例如:auth.center/callback)。那么当用户授权成功之后,先回调到中转站,auth.center/callback?code=123456789
  4. 中转站拿到code之后。读取cookie值,然后在将code回传给站点回调。 domain1/callback?code=123456789
  5. 站点拿到code之后进行微信用户获取操作即可。此时整个授权流程结束。

总结

  一个公众号不能配置多个回调域名的时候,采用中转站进行回调操作。此时公众号只需要配置一个回调域名,即中转站回调地址。中转站所要做的工作就是根据不同的请求来源,跳回不同的站点回调地址。已达到单个公众号授权多域名的操作。

  缺点:需要多跳转一步。

  优点:授权地址集中处理,业务可以自己掌握。

 

转载于:https://www.cnblogs.com/panzi/p/7551228.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值