【问题标题】:Oauth Signature not getting generated未生成 Oauth 签名
【发布时间】:2012-09-08 06:02:32
【问题描述】:

我正在尝试生成 Oauth 签名,以便从我的 Android 应用程序对 flickr.com 中的用户进行身份验证。

根据 flickr.com 中的文章,我必须发送签名请求才能获得签名。 flickr.com 指南页面的超链接是:

http://www.flickr.com/services/api/auth.oauth.html#request_token

根据帖子,我必须向 flickr 服务器发送这样的请求才能接收签名密钥:

http://www.flickr.com/services/oauth/request_token
?oauth_nonce=89601180
&oauth_timestamp=1305583298
&oauth_consumer_key=653e7a6ecc1d528c516cc8f92cf98611
&oauth_signature_method=HMAC-SHA1
&oauth_version=1.0
&oauth_callback=http%3A%2F%2Fwww.example.com

我以上述格式从我的应用发送了一个请求,但我收到的只是一个错误提示 oauth_problem=parameter_absent&oauth_parameter_absent=oauth_signature

我的请求代码是:

HttpGet get = new HttpGet("http://www.flickr.com/services/oauth/request_token?oauth_nonce="+nonce+"&oauth_timestamp="+ts+"&oauth_consumer_key=****&oauth_signature_method=HMAC-SHA1&oauth_version=1.0");

实际上的问题是,我通过其请求签名的 url 以错误的方式响应。它应该在哪里返回签名,它要求签名。

【问题讨论】:

    标签: java android oauth flickr


    【解决方案1】:

    签名步骤是没有请求的。您将到目前为止的 URI 转换为文档中所见的基本字符串(URL 对其部分进行编码等)。您使用 HMAC-SHA1 算法巫婆接受 2 个参数 keydata。使用基本字符串作为datakey

    是Consumer Secret 和Token Secret 的连接值,用“&”分隔。

    你从算法中得到的值(签名)然后被附加到你的 URI 中

    &oauth_signature={ALGORITHM_OUTPUT}
    

    然后您可以使用这个新的 URI 请求令牌。

    如果您认为这工作量太大,请查看一些 Java OAuth 库,例如scribe-java.

    【讨论】:

      猜你喜欢
      • 2017-03-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-01
      相关资源
      最近更新 更多