gpt4 book ai didi

twitter - 尝试发布时从 Twitter 获取 "Could not authenticate with OAuth."

转载 作者:行者123 更新时间:2023-12-04 16:12:50 24 4
gpt4 key购买 nike

我能够通过 OAuth 过程成功获得访问 token 。

但是,当我尝试对/statuses/update.json 端点运行 POST 时,我收到“无法使用 OAuth 进行身份验证”的消息。

我正在使用通过我的消费者 secret 进行身份验证后返回的 token 进行签名,我不明白还有什么可能。

Twitter 论坛也没有帮助。

任何提示将非常感谢。

最佳答案

对 Twitter 进行经过身份验证的调用可能会很痛苦。

确保签名基本字符串中的参数按字母顺序排列。

拿着这个:

oauth_consumer_key={consumerkey}&oauth_nonce={nonce}&oauth_signature_method=HMAC-SHA1&oauth_timestamp={timestamp}&oauth_token={token}&oauth_version=1.0&status={tweet text}

填写值,用 Base64 编码,然后像这样组合在一起:
POST&{base64 encoded url}&{base64 encoded base string}

这将是您需要签名的字符串(不带括号)。 (这种情况下的 url 将是 https://api.twitter.com/1.1/statuses/update.json )

签名 key 需要像这样构建:
{consumer secret}&{token secret}

签名是一个 HMACSHA1 哈希,然后是 base64 编码。

然后你需要把它放在 Authorization header 中:
OAuth oauth_consumer_key="{consumer key}",oauth_nonce="{nonce}",oauth_signature="{signature}",oauth_signature_method="HMAC-SHA1",oauth_timestamp="{timestamp}",oauth_token="{token}",oauth_version="1.0"

最后放 status=your tweet text作为您请求中发布的数据。

我希望这有帮助。

关于twitter - 尝试发布时从 Twitter 获取 "Could not authenticate with OAuth.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6869280/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com