如何为允许我申请的用户发布状态?

时间:2013-09-04 09:42:19

标签: twitter

在我的网站上,我想允许经过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

我在用户使用我的应用程序登录时收到令牌和token_secret吗?

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

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

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

/* 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!";
    }
相关问题