Twitter请求令牌OAuth 401错误
尝试使用OAuth添加twitter登录时,第一步请求令牌是一场噩梦,这将一如既往地导致401错误 我使用twitter的Test OAuth工具来比较我的scala服务器发送的http请求。Twitter请求令牌OAuth 401错误,twitter,oauth,Twitter,Oauth,尝试使用OAuth添加twitter登录时,第一步请求令牌是一场噩梦,这将一如既往地导致401错误 我使用twitter的Test OAuth工具来比较我的scala服务器发送的http请求。Curl请求有效,而我的服务器请求失败。将它们粘贴到下面进行比较。 卷曲请求 curl --request 'POST' 'https://api.twitter.com/oauth/request_token' --data 'oauth_callback=http%3A%2F%2F0.0.0.0%3A8
Curl请求有效,而我的服务器请求失败。将它们粘贴到下面进行比较。
卷曲请求
curl --request 'POST' 'https://api.twitter.com/oauth/request_token' --data 'oauth_callback=http%3A%2F%2F0.0.0.0%3A8081%2Fweb' --header 'Authorization: OAuth oauth_consumer_key="wRflKWWomJ9jKeK8wbTk0Jck3", oauth_nonce="46ef029600fcc2a6cbe068eb9711401c", oauth_signature="3ptB%2B6%2Fv9QYGgyQjO9DhuD7pmzA%3D", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1422879905", oauth_version="1.0"' --verbose
HttpRequest(POST,https://api.twitter.com/oauth/request_token,List(Authorization: OAuth oauth_consumer_key="wRflKWWomJ9jKeK8wbTk0Jck3", oauth_nonce="70449464359328", oauth_signature="yEni23tuzEveIMtDm7%2F8N2anU%2FM%3D", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1422879900", oauth_version="1.0"),HttpEntity(application/x-www-form-urlencoded,oauth_callback=http%3A%2F%2F0.0.0.0%3A8081%2Fweb),HTTP/1.1)
Scala服务器请求
curl --request 'POST' 'https://api.twitter.com/oauth/request_token' --data 'oauth_callback=http%3A%2F%2F0.0.0.0%3A8081%2Fweb' --header 'Authorization: OAuth oauth_consumer_key="wRflKWWomJ9jKeK8wbTk0Jck3", oauth_nonce="46ef029600fcc2a6cbe068eb9711401c", oauth_signature="3ptB%2B6%2Fv9QYGgyQjO9DhuD7pmzA%3D", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1422879905", oauth_version="1.0"' --verbose
HttpRequest(POST,https://api.twitter.com/oauth/request_token,List(Authorization: OAuth oauth_consumer_key="wRflKWWomJ9jKeK8wbTk0Jck3", oauth_nonce="70449464359328", oauth_signature="yEni23tuzEveIMtDm7%2F8N2anU%2FM%3D", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1422879900", oauth_version="1.0"),HttpEntity(application/x-www-form-urlencoded,oauth_callback=http%3A%2F%2F0.0.0.0%3A8081%2Fweb),HTTP/1.1)
我尝试过的事情:
- 确保时间戳在5分钟内
- 确保“允许此操作
用于使用Twitter登录的应用程序已在Twitter中设置
设置李>
- 已设置回调url-(甚至已尝试) 本地主机的代理名称(通过更改ip表)
- 尝试使用生成请求令牌
- 使用自定义OAuth签名请求,主要使用
对于许多人来说,401 twitter请求令牌似乎是一个反复出现的主题,由于各种失败点而变得复杂。非常感谢您的帮助。对于其他面临此问题的人,我列出了一些您可以从中受益的事情 经过痛苦的排列和组合尝试,
oauth_令牌
必须是签名的一部分(即使其值为
空字符串)我不确定是否在任何地方提到过这一点,尤其具有讽刺意味的是,在使用Twitter的OAuth测试工具时,您必须删除访问令牌和机密(为了使Curl命令正常工作,这需要花费大量时间来弄清楚)
- 验证您的基本字符串很好-
- 正在验证您的签名过程是否正确-