2012-07-23 56 views
0

我无法从ASP.Net(C#)中的QueryString中获取access_token值。无法使用QueryString访问access_token值(Google OAuth 2.0)

谷歌正在发送的授权令牌,但我不能够通过使用捕捉令牌值

  1. 查询字符串(获得空)
  2. 分割字符串(没有得到完整的网址)

的是的redirectUrl:http://www.onfrnz.com/auth.aspx

http://www.onfrnz.com/auth.aspx#state=/profile 
    &access_token={ACCESS_TOKEN} 
    &token_type=Bearer 
    &expires_in=3600 

普莱斯e在这方面帮助我。我不想使用图书馆。提前致谢。

+0

请张贴你如何试图做到这一点的代码。 – 2012-07-23 19:02:01

回答

1

您试图访问服务器端代码中的散列片段值。散列片段值(在URL中的#之后)不会从Web浏览器发送到Web服务器,因此无法在服务器端代码中访问。

当您最初揭开序幕的OAuth流,你有可能使用:

&response_type=token 

这表示您要使用的客户端(JavaScript)的应用流量(称为“隐含的”流规格)。

相反,你应该使用:

&response_type=code 

这将在查询参数返回授权code值,你应该能够检索使用.NET代码,然后交换访问令牌通过向Google发送服务器到服务器的请求。

在谷歌的OAuth 2.0流程的Web服务器应用程序(授权码流)的更多信息,请访问:

https://developers.google.com/accounts/docs/OAuth2WebServer

+0

感谢您的回应!我已经修复它使用JavaScript。 – user1546209 2012-07-28 13:32:28

相关问题