问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

微信OAuth2.0授权回调页面域名设置问题

发布网友 发布时间:2022-02-21 23:34

我来回答

5个回答

懂视网 时间:2022-02-22 03:56

其实微信地区是可以自己设置的,

默认情况下是当前的定位位置。那么微信地区怎么自定义呢?

1.打开微信app。

2.点击右下角我的点击上方头像。

3.找到更多点击即可发现地区。

4.设置想要的地区即可。

注意事项:地区设置后还可以修改,操作如出现差别可检查微信是否为最新版本。

热心网友 时间:2022-02-22 01:04

当下的解决方案是引入一个新的非常简单的应用来作为微信授权的代理服务,可以这么做:  

1. 把公众号的网页授权接口域名设置成另外一个子域名,如proxy.your.com;    
2. 然后把php_weixin_proxy里面的index.php部署到proxy.your.com

php_weixin_proxy下的index.php是一个很简单的php文件,你可以直接查看源码了解它的实现方式。因为当前项目的环境,我采用php来完成这个代理服务实现,实际上,你完全可以用任意平台语言来完成类似的功能。

当其它业务需要发起微信授权时,将授权请求先发到proxy.your.com,然后proxy.your.com会把这个请求转发到微信;  
当用户同意授权后,proxy.your.com会收到微信的授权回调,并把回调结果(code、state参数)原封不动地再返回给最开始发起授权的业务。

唯一的区别在于,在不使用proxy.your.com的时候,你从应用发起微信授权的链接应该是这样的:  
https://open.weixin.qq.com/connect/qrconnect?appid=xxxxx&redirect_uri=http%3A%2F%2Fpassport.your.com%2F&response_type=code&scope=snsapi_login&state=584bc87e11ff37492#wechat_redirect    
用了proxy.your.com之后,这个授权链接就应该是这样的:    
http://proxy.your.com/?appid=xxxxx&redirect_uri=http%3A%2F%2Fpassport.your.com%2Flogin%2Fnotify&response_type=code&scope=snsapi_base&state=584bc87e11ff37492&device=pc

后面这个链接跟上面的比:  
1. 后面的链接中的host变成了proxy.your.com,也就是代理的授权回调域名;    
2. 后面的多了一个device参数,这个是必要的。因为微信pc端跟移动端的授权地址是不一样的,而后面的链接是发送个proxy.your.com的,所以需要多加个参数告诉它在转发给授权申请给微信的时候,是用PC端还是移动端的授权地址。

1. 用户从我们的应用触发需要授权的操作,比如点击微信登录;    
2. 应用收到这种用户请求后,将用户重定向到微信提供的一个授权页面:    
或    
3. 用户通过微信扫码(PC端授权,上边左图)或者点击确认按钮(移动端授权,上边右图)告知微信,授权应用访问自己的微信账号信息;    
4. 微信收到用户的授权许可后,生成授权码,并把它作为参数回调至应用的某个页面;    
5. 应用的回调页面在接收到微信的回调请求后,拿到其中的授权码,并通过微信官方提供的access token api接口获取access token;    
6. 最后通过access token以及微信官方提供的另一个userinfo api接口就能获取到用户的微信账号信息。

为了实现这个过程,首先要为应用申请一个微信公众号,并将应用最终部署的域名设置到微信公众号设置里面的授权回调页面域名这个选项里面。微信官方对这个选项的说明如下:

关于网页授权回调域名的说明

1、在微信公众号请求用户网页授权之前,开发者需要先到公众平台官网中的“开发 - 接口权限 - 网页服务 - 网页帐号 - 网页授权获取用户基本信息”的配置选项中,修改授权回调域名。请注意,这里填写的是域名(是一个字符串),而不是URL,因此请勿加 http:// 等协议头;

2、授权回调域名配置规范为全域名,比如需要网页授权的域名为:www.qq.com,配置以后此域名下面的页面http://www.qq.com/music.html 、 http://www.qq.com/login.html 都可以进行OAuth2.0鉴权。但http://pay.qq.com 、 http://music.qq.com 、 http://qq.com无法进行OAuth2.0鉴权

3、如果公众号登录授权给了第三方开发者来进行管理,则不必做任何设置,由第三方代替公众号实现网页授权即可

由此可见,这个规则极其严格。如果说我们的应用最终部署的时候只有一个域名,那么这种规则不会有什么问题;但是考虑到将来应用的复杂性,我们可能在应用设计之初就会对应用做拆分,然后不同的业务采用不同的二级域名来部署。比如一个带有交易的应用,你可能会把登录注册,交易管理和常规业务都独立出来,然后采用以下的方式来部署它们:  
www.your.com 部署常规业务;    
trade.your.com 部署交易管理的业务;    
passport.your.com 部署登录注册的业务;    
在这种模式下,如果集成微信登录和微信支付,前面说的授权回调页面域名的规则就会给应用带来问题。在这里:至少可以确认trade.your.com和passport.your.com都需要前面的介绍的用户微信授权,但是它们是两个不同的子域名,而且我们只有一个公众号;根据授权回调页面域名的原则,它只能用一个域名,并且只有回调地址的域名与该设置完全相同,才能成功发起微信授权,否则就会提示rediret_uri参数错误或者引发无法回调的问题。

那么这种情况该如何处理?

当下的解决方案是引入一个新的非常简单的应用来作为微信授权的代理服务,可以这么做:  
1. 把公众号的网页授权接口域名设置成另外一个子域名,如proxy.your.com;    
2. 然后把php_weixin_proxy里面的index.php部署到proxy.your.com

php_weixin_proxy下的index.php是一个很简单的php文件,你可以直接查看源码了解它的实现方式。因为当前项目的环境,我采用php来完成这个代理服务实现,实际上,你完全可以用任意平台语言来完成类似的功能。

当其它业务需要发起微信授权时,将授权请求先发到proxy.your.com,然后proxy.your.com会把这个请求转发到微信;  
当用户同意授权后,proxy.your.com会收到微信的授权回调,并把回调结果(code、state参数)原封不动地再返回给最开始发起授权的业务。

唯一的区别在于,在不使用proxy.your.com的时候,你从应用发起微信授权的链接应该是这样的:  
https://open.weixin.qq.com/connect/qrconnect?appid=xxxxx&redirect_uri=http%3A%2F%2Fpassport.your.com%2F&response_type=code&scope=snsapi_login&state=584bc87e11ff37492#wechat_redirect    
用了proxy.your.com之后,这个授权链接就应该是这样的:    
http://proxy.your.com/?appid=xxxxx&redirect_uri=http%3A%2F%2Fpassport.your.com%2Flogin%2Fnotify&response_type=code&scope=snsapi_base&state=584bc87e11ff37492&device=pc

后面这个链接跟上面的比:  
1. 后面的链接中的host变成了proxy.your.com,也就是代理的授权回调域名;    
2. 后面的多了一个device参数,这个是必要的。因为微信pc端跟移动端的授权地址是不一样的,而后面的链接是发送个proxy.your.com的,所以需要多加个参数告诉它在转发给授权申请给微信的时候,是用PC端还是移动端的授权地址。

整体方案思路:

小结:

这个方案我测试过,是行的通的。虽然说引入了代理服务,增加了一次重定向操作,不过由于这个授权请求并不是所有请求都需要,所以实际上也不会对用户体验产生多大的影响,但是从架构上来说,它的好处很明显,能够配合着应用的拆分逻辑,集成同一个公众号的登录及支付功能,不必为每个子应用都单独申请一个公众号来开发了(这种方式从业务上来说也不合理,一个公司哪需要运营那么多公众号)。

热心网友 时间:2022-02-22 02:22

ip确实不行了。但端口号还是可以加的

热心网友 时间:2022-02-22 03:56

你如果只是换域名没换服务器的话IP地址是不会改变的,你可以直接输入自己之前服务器的IP就可以了

热心网友 时间:2022-02-22 05:48

不知道哎。微信不太懂、、top
微信OAuth2.0授权回调页面域名设置问题怎么解决?

2、授权回调域名配置规范为全域名,比如需要网页授权的域名为:www.qq.com,配置以后此域名下面的页面http://www.qq.com/music.html 、 http://www.qq.com/login.html 都可以进行OAuth2.0鉴权。但http://pay.qq.com 、 http://music.qq.com 、 http://qq.com无法进行OAuth2.0鉴权 3、如果公众号登录授权给...

原生ip - StormProxies

StormProxies是一家可靠的代理服务提供商,提供原生IP(住宅原生IP)和高匿名代理服务。以下是关于StormProxies的原生IP服务的一些信息:1. 住宅原生IP:StormProxies提供的住宅原生IP是指从真实的家庭或企业网络中获取的IP地址,这种类型的IP地址通常被认为是更加真实和可靠的代理服务。使用住宅原生IP可以更好地保护您的隐私和匿名性,并且可以提供更快的代理服务速度。2. 高匿名性:StormProxies的代理服务支持高匿名性,这意味着使用其服务的用户可以更好地保护自己的隐私和匿名性。高匿名性代理服务的匿名性更高,可以更好地避免被追踪和识别的…StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,IP纯净高匿;2、覆盖全球20...

微信公众平台开发:通过OAuth2.0方式不弹出授权页面获得用户基本信息...

页面URL中的scope=snsapi_base 表示应用授权作用域为 不弹出授权页面,直接跳转,只获取用户openid 这里我配置的redirect_uri是 http://testpcenter.shenbianhui.cn/TCP/WeixinJSPay.aspx step3. 返回回调页面如下 这里获得到了code step4. 再使用code获取OpenID url如下:返回如下 step5. 获取全局Access...

微信OAuth2.0网页授权67可以添加多个域名吗?

只有一个。如果有多个程序,某个支持子目录。回调域名。在根目录下新建某个目录/pin。把代码传到pin文件夹。通过/pin。前提是这个代码支持子目录访问。这样就可以一个授权域名,(1+n)个程序,共用。如果不支持子目录访问,那就没办法了。

微信公众平台登录时提示“域名错误”怎么办?

错误原因是:1. 订阅号没有相关的权限。2. 账号没有认证,没有相关的权限。3. scope 参数位置错误。使用的AppId和AppSecret在功能-高级功能-开发模式-开发者凭据中,可以找到。配置授权回调页面域名。进入微信公众平台后台后,依次进入服务-我的服务,找到OAuth2.0网页授权。点击右侧的修改。授权回调域名...

微信公众号提示10005错误

①点击OAuth2.0网络授权 ②点击网页账号后的“修改”选项 ③输入自已的授权回调域名,点确认 注意:授权回调域名配置规范为全域名且不带http,假如需要网页授权的域名为:”www.qq.com“,配置以后此域名下面页面“http://www.qq.com/music.html、http://www.qq.com/login.html ”都可以进行OAuth2....

【微信网页授权】SpringBoot+uniapp实现网页授权获取用户基本信息_百度...

常见问题与错误处理 确保回调页面域名配置正确,否则可能出现"redirect_uri参数错误"的提示。 code需及时刷新,否则在换取access_token后会失效,可能导致"oauth_code已使用"的错误。 总结:虽然流程较长,但实现简单。推荐深入阅读微信官方文档,多理解官方文档的说明,对授权流程会有更深的认识。...

微信登录报错:redirect_uri域名与后台配置不一致,错误码10003_百度知...

1、在微信公众号请求用户网页授权之前,开发者需要先到公众平台官网中的开发者中心页配置授权回调域名。2、授权回调域名配置规范为全域名,比如需要网页授权的域名为: www.qq.com , 配置以后此域名下面的页面 http://www.qq.com/music.html 、 http://www.qq.com/login.html 都可以进行...

为什么微信公众号的页面会出现参数错误?

还必须通过微信认证,才能拥有这种权限。上诉两种情况皆为没有scope权限。而如果以上两种原因都不是,开发账号是服务号,而且也是认证号。那就剩最后一个原因:scope 参数位置错误。而这种原因是因为scope的位置不一样 解决方案:需要在OAuth2.0网页授权中配置授权回调页面域名。

微信网页授权基本步骤

一、首先在微信公众平台配置授权回调地址(“开发 - 接口权限 - 网页服务 - 网页帐号 - 网页授权获取用户基本信息”的配置选项中,修改授权回调域名);二、关于网页授权的两种scope的区别说明 1、以snsapi_base为scope发起的网页授权,是用来获取进入页面的用户的openid的,并且是静默授权并自动跳转到回调页...

梳理微信小程序登录时序图:授权与 Oauth2.0

下面是在 小胡子哥的个人博客 里看到的,将整个授权过程讲解的生动形象,我就不做二次加工,直接截取部分内容如下。开发微信小程序第一步要在 微信公众平台 上注册一个账号,注册完成后在 设置 > 开发设置 里可以看到 AppID 和 AppSecret,这相当于上面提到的 Client Id 和 Client Secret。

声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
用手机发飞信收费吗用手机发飞信,接收短信的一方要不要钱?中国联通 ...飞信,但不能给好友发短信。退出后好友的手机中显示的是离线而不... 联通天语w366双卡双待手机,怎么设置登录手机飞信? 加好友后,飞信客户端给联通号发短信,联通号了以离线收到短信吗?_百度... 我的飞信号绑定了联通卡,发飞信短信是不是要收钱的,发飞信消息呢?假如... ...中如果设置所用流量为联通卡上的流量,那么登飞信且发飞信用的... 廉江市横山镇为什么不舍多一个派出所来保证百姓的安全出入 廉江香港澳门出入证在那里办 江门市到廉江市在哪个收费站下 廉江禁止出入吗 回调URL和Token,微信自动回复怎么设置 微信公众平台怎么设置网页回调域名? qq密码忘记了怎么改密码 微信开放平台创建的移动应用使用微信支付时怎么设置回调url 请问我QQ密码忘了怎么改啊?你能帮我改吗? 微信公众平台怎么设置网页回调域名 QQ密码忘记了怎么修改QQ密码 QQ密码忘了怎么修改 京东金融钱怎么取出来 qq密码怎么改密码原密码忘了 qq密码忘了怎么修改新密码 qq密码忘记了怎么改 微信地址怎么设置中国大陆,教你如何设置微信地址,教程就在下方 华为微信地址中国大陆怎么设置 QQ密码忘记了怎么修改 微信怎么把地址改成 其他 中国 qq密码忘记了怎么修改密码 微信地址怎样设置成中国河南,省去市。 微信怎么设置为中国大陆? qq忘记密码怎么修改密码 微信公众平台开启怎么回调url和token 忘了怎么办我把自己的QQ密码忘记了,每 微信显示地址怎么设置? 忘了自己的QQ密码怎么办 微信自编地址怎么设置 忘记自己的qq密码怎么办 微信如何设置地址 忘记自己qq密码怎么办 忘记了自己的QQ密码怎么办? 忘记自己的qq密码了怎么办 微信怎么数据迁移到新手机 忘记自己的qq密码怎么办? 微信里的数据怎么转移到新手机 忘记自己的qq密码怎么办? 微信数据怎样迁移到新手机 微信数据怎么转移到新手机 我忘记自己的QQ密码了怎么办? 微信怎么把数据转移到新手机 怎么快速把微信所有记录导到新手机 怎么快速把微信聊天记录导入新手机
  • 焦点

最新推荐

猜你喜欢

热门推荐