我正在尝试使用 Twitter OAuth,但我的 POST
请求因 401
(无效的 OAuth 请求
)错误而失败。
例如,如果我想发布一个新的状态更新,我将发送一个 HTTP POST
请求到 https://twitter.com/statuses/update.json
使用以下参数 -
status=Testing&oauth_version=1.0&oauth_token=xxx&
oauth_nonce=xxx&oauth_timestamp=xxx&oauth_signature=xxx&
oauth_consumer_key=xxx&in_reply_to=xxx&oauth_signature_method=HMAC-SHA1`
我的 GET
请求都工作正常。我可以在邮件列表中看到很多人遇到了相同的问题,但我无法在任何地方找到解决方案。
我正在使用 oauth.py
Python 库。
最佳答案
我刚刚使用 Java 从头开始实现了 Twitter OAuth API。获取和发布请求工作正常。您可以使用此页面 http://www.hueniverse.com/hueniverse/2008/10/beginners-gui-1.html检查签名和 HTTP header 。只需输入您的 key 和 token 并检查输出。看起来推特的工作原理与这篇文章中描述的完全一样。小心空格和 UTF-8 符号,例如 Java 将空格编码为“+”,但 OAuth 需要 %20
关于python - 在 Twitter OAuth POST 请求上获取 401,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7001629/