找回密码

微信登录

只需一步,快速开始

QQ登录

只需一步,快速开始

发新帖

3322

积分

好友

主题
发表于 2016-7-3 17:05:26 | 查看: 2326| 回复: 0
解决微信OAuth2.0网页授权回调域名只能设置一个的问题
8 g% @% E1 y% u; |
  • 部署get-weixin-code.html至你的微信授权回调域名的目录下,例如http://wx.abc.com/get-weixin-code.html
  • 在其他页面的使用方式如下,类似于直接通过微信回调的方式,只是将回调地址改成了get-weixin-code.html的地址,另外省去了response_type参数(因为它只能为code)以及#wechat_redirect的hash,它们会在get-weixin-code.html里面去加上
    location.href = 'http://wx.abc.com/get-weixin-code.html?appid=XXX&scope=XXX&state=XXX&redirect_uri=' + encodeURIComponent(location.href);
  • get-weixin-code.html页面从微信那里拿到code之后会重新跳转回调用的页面,并且在url后面带上code% p& ~! y' p2 X/ H  S2 @8 m
其他说明
  • 通过多一次的跳转,解决了微信限制回调域名只能设置一个的问题
  • 牺牲了一点用户体验,换来了项目部署的美感,不需要将各种项目都部署到一个域名下
  • 如果你有这样的需求,可以使用本项目
  • 欢迎提交pull request
  • 很多朋友问我怎么支持第三方微信平台,这个需要对不同的第三方平台的授权方式有所了解,熟悉他们的授权方式,请求参数等。如果他们是通过在网站入口处的URL上进行授权的,那么可以使用本项目,将入口的URL改成上述的方式,如果他们是在流程中的某些页面去获取授权,那么是没法改变他们的获取地址的,所以本项目就不适用了) U' ]3 b. j' h+ G3 y- P8 F
相关资料:
, e5 U& t& c+ k) t" \4 T  G3 l' v0 `/ x* \- m# Y9 Z5 }
. n1 {8 M  V' A2 n
1、https://github.com/HADB/GetWeixi ... et-weixin-code.html
3 o, z9 @( K7 n1 H9 W8 }, g2、https://github.com/HADB/GetWeixinCode) ]2 Y" U9 Z; n
5 H' f4 l- z. x" @7 a; V$ R

+ U, ]% G; Z8 q7 U- }- M$ r

GetWeixinCode-master.zip

3.04 KB, 下载次数: 0

售价: 2  [记录]  [购买]

QQ|首页|活动TV|活动社区|WoGoods|IGV5|M现场|微现场IM|大屏幕Plus|手机版|微信互动素材库

GMT+8, 2024-4-20 15:00 , Processed in 0.062697 second(s), 35 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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