【问题标题】:Google GetAccessToken : Bad Request 400Google GetAccessToken:错误请求 400
【发布时间】:2011-06-21 07:42:17
【问题描述】:

我正在使用 (OpenId+OAuth) 混合协议。

在我使用所有 openid 和 oauth 扩展参数将用户重定向到“https://www.google.com/accounts/o8/ud”后,用户可以看到我需要访问的登录屏幕和服务。成功登录后,我收到如下响应:

http://muUrl.com/...&openid.ns.ext2=http://specs.openid.net/extensions/oauth/1.0&openid.ext2.scope=http://docs.google.com/feeds/&openid.ext2.request_token=4/8GCHDIvtxhbg8gVkfYro7QIFakoB

我了解用户已正确登录并且粗体文本是授权令牌。然后我调用获取所有参数除了oauth_verifier的访问令牌,因为这在混合模式下不可用。我使用 HMAC-SHA1 签署基本字符串,密钥为“consumersecret&”(令牌密钥尚不可用)

我收到签名无效的 400 个错误请求。非常感谢任何帮助或建议来解决此问题。

【问题讨论】:

  • 检查您的逃逸百分比。 Google 令牌中有很多特殊字符,很容易忘记正确转义它们。这将使签名无法匹配。如果这不起作用,您真的将不得不在您的问题中添加更多信息。这里没有足够的信息来成功调试 OAuth 问题。
  • 谢谢...这只是编码问题。
  • 但是你在哪里写编码?这是 Google 课程...我得到一个类似“code=4/Ryjbc-ykPJvJhhonyYiN3359rofU.8r0nRibOcg0TOl05ti8ZT3aNCxetdQI”的代码 - 你认为它应该被编码吗?

标签: oauth


【解决方案1】:

请看 Bob 和我的 cmets。 如果您面临与我相同的问题,则 % 转义可能是一个问题。 oauth_verifier 在混合模式下确实不需要。

【讨论】:

    猜你喜欢
    • 2020-11-08
    • 1970-01-01
    • 1970-01-01
    • 2012-07-26
    • 2013-07-21
    • 2012-03-18
    • 1970-01-01
    • 1970-01-01
    • 2012-09-07
    相关资源
    最近更新 更多