我在 Settings/..../ Keys and Access Tokens 页面中生成了访问令牌,现在有一个
- 消费者密钥
- 消费者密钥
- 所有者 ID(即使这可能已经生成)
- 访问令牌
- 访问令牌秘密
并且正在使用一个休息客户端来测试能够使用这个 api 端点提取最新的 3 个状态
https://api.twitter.com/1.1/statuses/user_timeline.json?user_id=userIdHere&count=3
以及以下标题
- 接受:/
- 连接:关闭
- 用户代理:OAuth gem v0.4.4
- 内容类型:application/x-www-form-urlencoded
- 内容长度:76
- 主持人:api.twitter.com
- 授权:OAuth
- oauth_consumer_key=
- oauth_signature=
- oauth_signature_method=
- oauth_timestamp=
- oauth_token=
- oauth_version=
显然,端点地址(上图)中的“userIdHere”被我的用户名替换(我知道我也可以使用我的 user_id,但这不是重点)以及被替换为实际值的“授权”值。这就是我的问题所在...
每个“oauth...”授权参数与其关联的 Twitter 生成和提供的令牌或密钥(在帖子顶部附近提到)的映射是什么?
我不断收到“400 Bad Request”响应,并认为授权失败是因为密钥位置的排列不正确。我不知道哪个值对应哪个 'oauth...' 值
最后,“Authorization”参数头的结构如下(根据 Twitter 示例中的说明)作为一行字符串值
OAuth oauth_consumer_key="xvz1evFS4wEEPTGEFPHBog", oauth_nonce="kYjzVBB8Y0ZFabxSWbWovY3uYSQ2pTgmZeNu2VS4cg", oauth_signature="tnnArxj06cWHq44gCs1OSKk%2FjLY%3D", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1318622958", oauth_token="370773112-GmHxMAgYyLbNEtIKZeRNFsMKPR9EyMZeS9weJAEb", oauth_version="1.0" )
我只是想使用 GET 来获取最后 3 个状态并且无法获得。另外,我计划将值切换到环境变量,但这并不重要..
现在使用 Postman更新 ,它更擅长映射,但现在越来越
{
"errors": [ { "code": 32, "message": "无法验证您的身份。" } ] }