Oauth 2.0 授权时Google Oauth问题

Oauth 2.0 授权时Google Oauth问题,oauth-2.0,google-oauth,Oauth 2.0,Google Oauth,在使用Oauth 2.0()的google授权时,我面临一个问题 我的应用程序重定向URI是 http://localhost/google/c.php 我正在从Google接收带有get请求方法的access_令牌,但它使用以下给定url发送数据(在通过登录许可后) 而不是 http://localhost/google/c.php?access_token=ya29.IgCM3ATGrzegCR8AAADlE-cRiYWIUVZhQKCJv6hw2nKTC9jJUYDfDieThjcq8A

在使用Oauth 2.0()的google授权时,我面临一个问题

我的应用程序重定向URI是

http://localhost/google/c.php
我正在从Google接收带有get请求方法的access_令牌,但它使用以下给定url发送数据(在通过登录许可后)

而不是

http://localhost/google/c.php?access_token=ya29.IgCM3ATGrzegCR8AAADlE-cRiYWIUVZhQKCJv6hw2nKTC9jJUYDfDieThjcq8A&token_type=Bearer&expires_in=3600
我不明白为什么我得到的是#而不是?在查询URL的字符串之前

我正在调用以下URL以启动此授权过程

https://accounts.google.com/o/oauth2/auth?response_type=token&client_id=539024181015-s12j23s8fshbtv0g1n5ajrtml8mheh5c.apps.googleusercontent.com&redirect_uri=http://localhost/google/c.php&scope=https://www.googleapis.com/auth/analytics.readonly

如果在客户端应用程序中使用OAuth 2.0,则使用

隐式流是为使用JavaScript等脚本语言在浏览器中实现的客户端而设计的


在隐式流中使用哈希片段的原因是该片段不会在HTTP请求消息中发送。这样,访问令牌就不能被中间服务器/路由器截获。

如果您将OAuth 2.0用于客户端应用程序,那么您将使用

隐式流是为使用JavaScript等脚本语言在浏览器中实现的客户端而设计的


在隐式流中使用哈希片段的原因是该片段不会在HTTP请求消息中发送。这样,访问令牌就不能被中间服务器/路由器截获。

如果您想为您的服务器获取访问令牌,您应该请求一个授权码,并将该码交换为访问令牌(如果您也请求脱机访问类型,则可能带有刷新令牌)。以下是Google OAuth2 web服务器流的文档:

如果您想为您的服务器获取访问令牌,您应该请求一个授权代码并将该代码交换为访问令牌(如果您也请求脱机访问类型,则可能带有刷新令牌)。以下是Google OAuth2 web服务器流的文档:

感谢Owen,用我的方式来获取访问令牌。感谢Owen,用我的方式来获取访问令牌。感谢mengcheng,我用你建议的方法解决了这个问题。感谢mengcheng,我用你建议的方法解决了这个问题。
https://accounts.google.com/o/oauth2/auth?response_type=token&client_id=539024181015-s12j23s8fshbtv0g1n5ajrtml8mheh5c.apps.googleusercontent.com&redirect_uri=http://localhost/google/c.php&scope=https://www.googleapis.com/auth/analytics.readonly