У меня возникают некоторые проблемы при попытке заставить мой код разместить HTML-холст в Tumblr в качестве фотографии.Я использую PHP, и код на стороне сервера выглядит следующим образом:
if(isset($_POST['postphoto']) and $_SESSION['loggedin']) {
$title = $_POST['title'];
$caption = $_POST['caption'];
tags = $_POST['tags'];
$imageData = $_POST['imageData'];
$imageData = substr($imageData,strpos($imageData,",")+1);
$imageData = str_replace(' ','+',$imageData);
# Set access token
$tumblr->set_token($_SESSION['oauth_token'], $_SESSION['oauth_token_secret']);
$data = array();
$data['post'] = array(
'type' => 'photo',
'generator' => 'AppName',
'data' => $imageData,
'name' => $title,
'caption' => $caption,
'tags' => $tags
);
$response = $tumblr->fetch('http://www.tumblr.com/api/write', $data);
if($response['successful']) {
echo "Update successful!<br><br>";
} else {
echo "Update failed. {$response[body]}<br><br>";
}
}
На стороне JavaScript у меня есть следующее:
var imgData = canvas.toDataURL("image/png");
$("#imageData").val(imgData);
imageData имеет тип формыскрытый, поэтому я просто устанавливаю значение.Затем вся форма публикуется на стороне PHP.Я проверил, и значения передаются правильно (я сделал аналогичную вещь для TwitPic, он работает, поскольку он просто принимает значение toDataURL, но Tumblr дает много проблем).
Спасибо за помощь!:)