我正在尝试使用php发送图片。我已阅读文档并遵循了一些教程。发送邮件时我没有任何问题;但是,它不适用于图像。我找不到我的错误,有人可以帮忙吗?我会非常感激。
<?php
$comments = $_POST['comment'];
if (isset($_POST['Twitter']))
{
require_once('twitter/codebird-php/src/codebird.php');
\Codebird\Codebird::setConsumerKey("xxxxxx","xxxxxx");
$cb = \Codebird\Codebird::getInstance();
$cb->setToken("xxxxxx", "xxxxxxxxxx");
$params = array(
'status' => $comments,
'media[]' => "/images/image1.jpg"
);
$reply = $cb->statuses_update($params);
echo "You have posted your message succesfully";
}
else{
echo "You havent posted anythingh";
}
?>
答案 0 :(得分:7)
您需要向Twitter提供图像的完全限定URI。
您有以下代码:
$params = array(
'status' => $comments,
'media[]' => "/images/image1.jpg"
);
不幸的是,这不是图片的完整网址,而是相对网址。相反,你需要提供以下内容:
$params = array(
'status' => $comments,
'media[]' => "http://www.example.com/images/image1.jpg"
);
此外,根据Twitter API v1 documentation,您需要使用statuses/update_with_media
代替statuses/update
。
如果您使用的是Twitter API v1,Twitter也会推荐using v1.1 instead。