【问题标题】:How to Tweet in Twitter using PHP如何使用 PHP 在 Twitter 中发推文
【发布时间】:2014-01-23 15:10:03
【问题描述】:

如何从我的网站在 Twitter 上发布推文?我正在使用 PHP 脚本。无论我从我的网站发送什么推文,都应该更新我的推特账户。我使用以下代码,但它没有在我的 Twitter 帐户中更新:

// Set username and password
$username='myusername';
$password='*********';
// The message you want to send
$message = 'Nice to c all again.Have a nice day..';
// The twitter API address
$url='http://twitter.com/statuses/update.xml';
// Alternative JSON version
// $url = 'http://twitter.com/statuses/update.json';
// Set up and execute the curl process
$curl_handle = curl_init();
curl_setopt($curl_handle, CURLOPT_URL, $url);
curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2);
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_POST,1);
curl_setopt($curl_handle, CURLOPT_POSTFIELDS,"status=".$message);
curl_setopt($curl_handle, CURLOPT_USERPWD,"$username:$password");
$buffer = curl_exec($curl_handle);
curl_close($curl_handle);
// check for success or failure
if (empty($buffer)) {
    echo 'Try again';
} else {
    echo 'success';
}

此脚本正在返回一条成功消息,但是当我检查我的 Twitter 帐户时,没有找到任何推文。

可能是什么问题?

【问题讨论】:

标签: php twitter


【解决方案1】:

您正在尝试使用基本身份验证(用户名和密码)发送推文。这不再被允许。网上有很多这样的例子,但 Twitter 去年 8 月将其关闭。您现在必须使用 OAuth 进行身份验证。

【讨论】:

    【解决方案2】:

    要使用 twitter 发布推​​文,您需要 post_authenticity_token 以及您的 用户名密码。 此令牌可以通过使用 curl 获取它从您的个人资料页面中获取(在您使用 curl 登录之后)。我尝试了 curl 并且能够使用 curl 发布推文。您可以在以下位置找到我的代码(虽然它是在 bash 脚本中,但它可以很容易地移植到 php,因为它们都使用 curlhttp://pastebin.com/a5eBcEeP.

    【讨论】:

      【解决方案3】:

      您可以在此处找到支持 OAUTH 的 PHP 库列表,您可以在此处使用 PHP 和 1.1 版本的 Twitter API 编写推文函数: https://dev.twitter.com/docs/twitter-libraries

      tmhOAuth 可能是我最喜欢的。

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-09-12
      • 1970-01-01
      • 2011-09-13
      • 2017-07-15
      • 1970-01-01
      • 2011-04-18
      • 2012-10-27
      相关资源
      最近更新 更多