亚伯拉罕的twitteroauth图书馆是否适用于update_with_media?

时间:2012-06-28 11:28:11

标签: php twitter twitter-oauth

亚伯拉罕的twitteroauth图书馆是否适用于update_with_media?

我正在使用下面的代码,但它返回了stdClass对象 (     [请求] => /1/statuses/update_with_media.json     [错误] =>创建状态时出错。 )

session_start();
require_once('twitteroauth/twitteroauth.php');
require_once('config.php');


if (empty($_SESSION['access_token']) || empty($_SESSION['access_token']['oauth_token']) || empty($_SESSION['access_token']['oauth_token_secret'])) {
  header('Location: ./clearsessions.php');
}

 $connection = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET,$_SESSION['access_token']['oauth_token'], $_SESSION['access_token']['oauth_token_secret']);

$image = './images/5298.png';
$content = $connection->post('statuses/update_with_media', 
  array(
   'media[]' => '@{$image};type=image/jpeg;filename={$image}', 
   'status' => 'My current location'));

include('html.inc');

任何人都知道如何解决这个问题?

编辑1:我使用https://upload.twitter.com/1/作为网址

3 个答案:

答案 0 :(得分:5)

是的,确实如此!更改两个文件Oauth.php和twitteroauth.php,如此链接https://github.com/robhaswell/twitteroauth/commit/7f5bfd2450cb1cff71641d7ea55e118f5a42885d所述,并使用$ connection->上传方法。

 $params = array('media[]' => '@'.$image_url, 'status' => $messafe);
 $twit = $connection->upload('statuses/update_with_media',$params);

答案 1 :(得分:2)

根据图书馆作者在其他地方的回答 - 不,它不适用于update_with_media。

  

TwitterOAuth目前不支持媒体上传。我希望补充一下   将来的支持。   5月10日@abraham在update_with_media using abraham's twitteroauth

答案 2 :(得分:0)

 $params = array('media[]' => file_get_contents($image_url), 'status' => $messafe);
 $twit = $connection->upload('statuses/update_with_media',$params);

如果update_with_media无效,则稍有改动