,微信OAuth2.0授权回调页面域名设置问题怎么解决?

用户投稿 111 0

关于“oauth_2.0_server_php”的问题,小编就整理了【3】个相关介绍“oauth_2.0_server_php”的解答:

微信OAuth2.0授权回调页面域名设置问题怎么解决?

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

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的时候,你从应用发起微信授权的链接应该是这样的: #wechat_redirect 用了proxy.your.com之后,这个授权链接就应该是这样的:

微信的OAuth2.0网页授权是什么意思?

类似现在很多网站上的 QQ帐号登录 也就是说 如果网站接入了网页授权功能 用户就可以通过微信登录网站 不需要另外注册会员帐号 但是现在好像只能通过微信访问网站才行

怎样根据access token获取openid?

通过用户验证登录和授权,获取AccessToken,为下一步获取用户的OpenID做准备;同时,AccessToken是应用在调用OpenAPI访问和修改用户数据时必须传入的参数。accesstoken由每次用户登录时生成,过期时间默认为三个月,用户再次登录时自动刷新,请网站或应用做好防过期策略,或过期后提示用户再次授权。OAuth2.0针对网站接入,提供了登录验证和授权流程,主要提供以下获取accesstoken的方式:

1.server-side模式即OAuth官方文档中提到的AuthorizationCode模式,适用于需要从webserver访问的应用。

2.client-side模式即OAuth官方文档中提到的Implicit模式,适用于需要通过客户端访问的方式。以上两种模式仅在获取access_token时有所区别,后续获取openid、调用API等方式均相同。

到此,以上就是小编对于“oauth_2.0_server_php”的问题就介绍到这了,希望介绍关于“oauth_2.0_server_php”的【3】点解答对大家有用。

抱歉,评论功能暂时关闭!