从Twitter API 1.0到1.1,gtm-oauth无法正确进行身份验证

时间:2012-11-05 22:12:45

标签: ios twitter oauth

所以,我天真地将我的端点路径切换到1.1 /以查看它是否可以在使用gtm-oauth库时工作,该库已经正常工作。

它似乎在交换机中断了。我已经收到确认认证更加严格(https://dev.twitter.com/discussions/12322)以及一些调试建议。显然,新API对于当前的gtm-oauth来说过于严格。

问:我想知道是否有人对新的Twitter API使用了gtm-oauth?如果是这样的话 - 你做了什么让它发挥作用?

我会继续调试,但与此同时,我想我会问,也许可以节省一些时间和麻烦。

这就是我所做的,以确定我身边可能出现的问题。

我仔细查看了我的身份验证标头,除了oauth_nonce和oauth_signature(和时间戳)之外,我的应用和OAuth签名工具之间保持一致。

在我看来,签名机制已经改变,或者随机数的唯一性要求在1.0和1.1之间变化。

我从服务中得到的错误是:

  

“错误验证数据”,“代码”:215“for:https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=darthjulian&count=2

在请求标头中使用以下身份验证参数:

  

OAuth oauth_consumer_key =“09ARKva0K7HMz1DW1GUg”,   组oauth_token = “185383-nxvJMkTAvYX14YRdBhEOfOUKYzcA3ZQzLqNVMMt4Nc”,   oauth_signature_method =“HMAC-SHA1”,oauth_version =“1.0”,   oauth_nonce =“e4ad7f4753c4929”,oauth_timestamp =“1352098450”,   oauth_signature = “hA9s%2B%2FnGRUc9OdUNqf5G4cQn5g0%3D”

过了一会儿,OAuth签名工具告诉我,我应该使用这样的东西:

  

授权:OAuth oauth_consumer_key =“09ARKva0K7HMz1DW1GUg”,   oauth_nonce = “3a2881b92c790e41cf6e211124f1e099”,   oauth_signature = “OlN0h3vPdPih8F%2FQbEDQth5RVZQ%3D”,   oauth_signature_method =“HMAC-SHA1”,oauth_timestamp =“1352098650”,   组oauth_token = “185383-nxvJMkTAvYX14YRdBhEOfOUKYzcA3ZQzLqNVMMt4Nc”,   oauth_version = “1.0”

除了oauth_timestamp nonce和签名是唯一关闭的东西。并且,如果我理解正确的话,nonce应该没问题,只要它可能在一段时间内是独一无二的。

似乎签名机制不同,我应该改变GTM-OAuth的标志吗?

0 个答案:

没有答案