Sus*_*ngh 6 php twitter twitter-oauth
我使用下面的代码来检索我的推文和echo json.这很好用.
<?php
session_start();
require_once('includes/twitter/twitteroauth.php');
$twitteruser = "xxxxxx";
$notweets = 3;
$consumerkey = "xxxxxxx";
$consumersecret = "xxxxxx";
$accesstoken = "xxxxxxxx";
$accesstokensecret = "xxxxxx";
$connection = new TwitterOAuth($consumerkey, $consumersecret, $accesstoken, $accesstokensecret);
$tweets = $connection->get("https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=".$twitteruser."&count=".$notweets);
echo json_encode($tweets);
?>
Run Code Online (Sandbox Code Playgroud)
现在我想使用类似的代码发送推文,但它不起作用.我不确定发送语法是否正确.所以请有人帮助我.
<?php
session_start();
require_once('includes/twitter/twitteroauth.php'); //Path to twitteroauth library
$twitteruser = "xxxxxx";
$notweets = 3;
$consumerkey = "xxxxxxx";
$consumersecret = "xxxxxx";
$accesstoken = "xxxxxxxx";
$accesstokensecret = "xxxxxx";
// start connection
$connection = new TwitterOAuth($consumerkey, $consumersecret, $accesstoken, $accesstokensecret);
//message
$message = "Hi how are you";
//send message
$status = $connection->post('https://api.twitter.com/1.1/statuses/update.json', array('status' => $message));
?>
Run Code Online (Sandbox Code Playgroud)
ide*_*xus 15
当新API破坏时,我正在使用twitteroauth.php自己发布推文.您使用$connection->post正确,但似乎功能不再起作用.我找到的最简单的解决方案是将twitteroauth.php与J7mbo的twitter-api-php文件换成新的1.1 API:
https://github.com/J7mbo/twitter-api-php
以下是他使用它的逐步说明.我想你会惊喜地发现你可以让你的大部分代码保持不变,只需在适当的地方用他的函数调用切换twitteroauth调用:
使用Twitter API 1.1版检索user_timeline的最简单的PHP示例
他没有提供发布推文的具体示例,但这里是您需要的功能:
$url = 'https://api.twitter.com/1.1/statuses/update.json';
$requestMethod = 'POST';
$postfields = array(
'status' => 'Hi how are you' );
echo $twitter->buildOauth($url, $requestMethod)
->setPostfields($postfields)
->performRequest();
Run Code Online (Sandbox Code Playgroud)
使用新的Twitter API,您无需提供用户名/密码.身份验证令牌将处理所有事情.
小智 5
只需使用示例:
$connection->post('statuses/update', array('status' =>$message));
Run Code Online (Sandbox Code Playgroud)