[微信第三方] GetWeixinCode解决微信OAuth2.0网页授权回调域名只能设置一个的问题

[复制链接]
 楼主| 发表于 2024-5-30 21:19:50 | 显示全部楼层 |阅读模式
解决微信OAuth2.0网页授权回调域名只能设置一个的问题8 }4 _0 i' B, r( M' n5 h+ t5 p4 b
部署get-weixin-code.html至你的微信授权回调域名的目录下,例如http://wx.abc.com/get-weixin-code.html
6 z5 S1 y0 X+ t: L3 E4 F在其他页面的使用方式如下,类似于直接通过微信回调的方式,只是将回调地址改成了get-weixin-code.html的地址,另外省去了response_type参数(因为它只能为code)以及#wechat_redirect的hash,它们会在get-weixin-code.html里面去加上9 ?# J! E5 G) L
location.href = 'http://wx.abc.com/get-weixin-code.html?appid=XXX&scope=XXX&state=XXX&redirect_uri=' + encodeURIComponent(location.href);% m3 x9 \8 ~" B) j7 z
get-weixin-code.html页面从微信那里拿到code之后会重新跳转回调用的页面,并且在url后面带上code
" s5 r+ J- v5 f
+ `0 Q/ o& `( Y7 V其他说明
( l$ W6 }& G& G" B8 M通过多一次的跳转,解决了微信限制回调域名只能设置一个的问题8 l% B7 b8 K( \5 Z' @1 H# w
牺牲了一点用户体验,换来了项目部署的美感,不需要将各种项目都部署到一个域名下2 I" N% \. t3 J% t& T
如果你有这样的需求,可以使用本项目
( t- I4 \% L; y欢迎提交pull request
) r" ^- N) @+ L, q4 C  ~很多朋友问我怎么支持第三方微信平台,这个需要对不同的第三方平台的授权方式有所了解,熟悉他们的授权方式,请求参数等。如果他们是通过在网站入口处的URL上进行授权的,那么可以使用本项目,将入口的URL改成上述的方式,如果他们是在流程中的某些页面去获取授权,那么是没法改变他们的获取地址的,所以本项目就不适用了
  y, C% |, b' F6 l! p1 x! A. R# {! W
: O) M4 B1 k8 j( h! ?, M7 o  o相关资料:- J* E. l! g3 l5 ?5 y; A& X( h

& P0 k3 J3 r7 Y% V9 e6 Z1、https://github.com/HADB/GetWeixi ... et-weixin-code.html1 ], }8 V1 s; P" m/ {
2、https://github.com/HADB/GetWeixinCode9 n1 m" W) V4 i- d- {2 n2 y, c

* Q( \8 R; `' r- Y( ~; U( G- R3 ^- d




上一篇:TOM微信摇一摇抽奖1.3
下一篇:微信上墙活动源码、微信大屏幕系统源码
回复

使用道具 举报

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

快速回复 返回顶部 返回列表