gpt4 book ai didi

php - Twitter API 在调用 statuses/update.json 时响应 "Your credentials do not allow access to this resource"

转载 作者:行者123 更新时间:2023-12-03 23:56:18 25 4
gpt4 key购买 nike

我正在使用 Hybridauth 3 在我的 PHP 应用程序中代表我的帐户发布一些定期推文。
该应用程序具有所有可能的权限。当它在第一个身份验证步骤中要求它们时,我将授予它所有权限。
在那之后,Twitter 将我重定向到指定的回调 URL,在那里我得到了一对 access_token 和 access_token_secret。
但是当我尝试使用这些 token 发推文时 - 它给了我:

{"errors":[{"code":220,"message":"Your credentials do not allow access to this resource."}]} 

这是我尝试发推文的方式:
$config = [
'authentication_parameters' => [
//Location where to redirect users once they authenticate
'callback' => 'https://mysite/twittercallback/',
//Twitter application credentials
'keys' => [
'key' => 'xxx',
'secret' => 'yyy'
],
'authorize' => true
]
];

$adapter = new Hybridauth\Provider\Twitter($config['authentication_parameters']);

//Attempt to authenticate the user
$adapter->setAccessToken(/*tokens I've got from getAccessToken() on /twittercallback/*/);

if(! $adapter->isConnected()) {
// never goes here, so adapter is connected
return null;
}

try{
$response = $adapter->setUserStatus('Hello world!');
}
catch (\Exception $e) {
// here I've got the error
echo $e->getMessage();
return;
}

尝试重新创建 token 和 key \ secret 对并多次通过应用程序的身份验证过程,包括为我的 Twitter 帐户输入密码(如 stackoverflow 上的一些帖子中所建议),但仍然出现此错误。

附言根据 this , Hybridauth 在最近的版本中修复了这个问题。

最佳答案

看起来您正在使用应用程序身份验证而不是用户身份验证。要发布推文,您必须以用户身份进行身份验证。另外,请确保您的 Twitter 应用程序具有读/写权限。

关于php - Twitter API 在调用 statuses/update.json 时响应 "Your credentials do not allow access to this resource",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46331180/

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