通常の HTML フォームを使用して、画像を URL にアップロードすると、アップロードして正常に返されます。ただし、PHPでこれを行うと
$bytes = download_attachment($timeline_item_id, $attachment);
$image = imagecreatefromstring($bytes);
imagejpeg($image, 'tempfile.jpg');
$files[] = '@tempfile.jpg;filename=tempfile.jpg;type=image/jpeg';
$post = array('authenticationToken' => 'AUTH_TOKEN','media-content'=>@"tempfile.jpg");
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"https://api-ssl-5.tenthbit.com/send/media");
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
$result=curl_exec ($ch);
curl_close ($ch);
うまくいきません....何かアイデアはありますか?imagecreatefromstring が正しいかどうかはわかりません。ただし、有効な画像を含む tempfile.jpg ファイルが作成されました。 $result は、FORM からの JSON 応答ではなく「true」です
ref のフォーム:
<form action="https://api-ssl-5.tenthbit.com/send/media" method="post"
enctype="multipart/form-data">
<input type="text" name="authenticationToken" id="file" value="AUTH">
<input type="file" name="media-content" id="file"><br>
<input type="submit" name="submit" value="Submit">
</form>