0

在我的网站上,我想允许获得 twitter 授权的用户使用我的应用程序在他们自己的 twitter 墙上(页面)上发表评论。我可以像这样为我的页面做到这一点

$connection = new Twitter_TwitterOAuth(

$this->config->twitter->consumer_key,
$this->config->twitter->consumer_secret,
$this->config->twitter->token,
$this->config->twitter->token_secret

);

$connection->post('statuses/update', array('status' => $data['text'] . $data['name'] . "." . chr(13) . chr(10) . "More details " . $data['link'] .'?review='. $data['id']));

那么我需要做什么才能为另一个帐户发布相同的内容?我需要设置帐户(我想通过应用程序发布状态)ID 或者我需要设置其他

$this->config->twitter->token,
$this->config->twitter->token_secret

用户使用我的应用程序登录时收到的令牌和令牌秘密?

感谢帮助。

4

1 回答 1

1

对于另一个帐户,sleep(//someseconds);如果您在该库中没有限制,则应该对另一个帐户执行相同的操作。看起来该帐户是您的,因为在您发布的代码中,我看到了用户的授权(回调)。如果我的猜测是正确的并且您正在使用应用程序授权,那么您需要使用您的其他帐户授权您自己的应用程序,因此理想情况下不需要重置令牌。如果它不起作用,请尝试重置它们。如果还是不行,一个窍门是有两个应用程序(每个帐户都有一个应用程序,每个帐户使用自己的应用程序发帖)。但是,请记住,a) Twitter 会计算来自您服务器的调用总数,并且 b) 我不确定他们是否喜欢多个帐户。

编辑:如果您需要为已授权您的应用并且当前在您的网站上在线的用户发帖,只需将他们的令牌存储在会话中(就像亚伯拉罕威廉姆斯在他的库中所做的那样)。在这种情况下,您需要重置变量以反映令牌的变化。示例代码,Williams 提供:

/* Get user access tokens out of the session. */
$access_token = $_SESSION['access_token'];
$access_token_secret = $_SESSION["access_token_secret"];
/* Create a TwitterOauth object with consumer/user tokens. */
$connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, $access_token, 

$access_token_secret);
$message ="your message";
$parameters = (array('status' =>$message));
$status = $connection->post('statuses/update', $parameters);
twitteroauth_row('statuses/update', $status, $connection->http_code, $parameters);
if ($http_code = 200){
// echo "Done!";


 } else {
   // echo "Oops!";
    }
于 2013-09-04T10:08:28.857 回答