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

前言

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

流程解读

  

授权流程

  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之后进行微信用户获取操作即可。此时整个授权流程结束。

总结

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

  缺点:需要多跳转一步。

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

 

posted @   丶Pz  阅读(1077)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示

目录

目录

X
+

"大爷常来玩呀"

微信支付