如何使用在请求中从Twitter OAuth 1.0a获得的“用户上下文访问令牌”?

问题描述 投票:0回答:1

我已经成功(?)实现了Twitter三足式身份验证过程,以获得用户访问令牌。问题是访问令牌似乎无效...或者我使用错误。我已经能够获取应用程序的访问令牌,该令牌可以访问有限的Twitter API。我通过在标题上添加“身份验证:承载'访问令牌'”来使用它。但是,当我使用用户上下文访问令牌执行相同的操作并执行相同的请求时,总是收到错误代码89无效或过期的令牌。

我获得的访问令牌具有[几个数字]-[一些字母数字字符]的结构。像12345678-asd98f798asdf79asdfa9sdfs9df7a9sdf7。这看起来与https://developer.twitter.com/en/docs/basics/authentication/oauth-1-0a/obtaining-user-access-tokens的步骤3中的访问令牌示例类似。

我还注意到那里的示例请求是这样的:

POST statuses/update.json
oauth_consumer_key=cChZNFj6T5R0TigYB9yd1w
oauth_token=7588892-kagSNqWge8gB1WwE3plnFsJHAZVfxWD7Vb57p0b4

我假定这两个附加参数将添加到正文中,而不是标题中。但是,如果我的请求是GET请求,该怎么办?就像要求返回首页时间线一样,这绝对需要用户上下文访问令牌吗?

https://developer.twitter.com/en/docs/tweets/timelines/api-reference/get-statuses-home_timeline

此API参考提供的示例仅提供GET网址,而没有提供用户上下文访问令牌的方式。请帮忙。我觉得该解决方案非常简单(例如标题修复),但看不到。

这是我当前的要求:

curl -X GET \
  'https://api.twitter.com/1.1/users/show.json?screen_name=huffpost' \
  -H 'Authorization: Bearer 12345678-as3d12a3d1a3sd1232ads13asd123as1d23as3d32,Bearer 12345678-as3d12a3d1a3sd1232ads13asd123as1d23as3d32' \

这是结果:

{
    "errors": [
        {
            "code": 89,
            "message": "Invalid or expired token."
        }
    ]
}
api twitter oauth access-token
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.