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

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

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

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

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

我仔细查看了我的身份验证标头 - 除了oauth_nonce和oauth_signature(以及时间戳),我的应用和OAuth签名工具之间是一致的 .

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

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

“错误验证数据”,“代码”:215“适用于:https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name = datjulian&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的标志?