1

現時点では、サーバーに画像をダウンロードして、次のように投稿する必要があります。

$photo = array(
    'message'  => 'Status',
    'source'   => '@/full/path/of/the/image.png'
);

$response = $fb->api('/'.$album.'/photos', 'POST', $photo);

バックエンドでcurlを使用してこのリクエストを投稿していますが、うまく機能しています。ローカル コピーをダウンロードする代わりに、リモート イメージを直接投稿することは可能でしょうか?

私はこのようなことをしようとしました:

$photo = array(
    'message'  => 'Status',
    'source'   => file_get_contents('http://www.domain.com/image.png')
);

$response = $fb->api('/'.$album.'/photos', 'POST', $photo);

しかし、グラフ API から例外が発生しました:「(#324) アップロード ファイルが必要です」

これは、データの配列を送信するときに自動的に設定される multipart/data ヘッダーを送信していないときに発生しているようです ($data配列です)。

curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

したがって、リモート画像を投稿できるかどうかは疑わしいです。どう思いますか?

4

1 に答える 1

2
于 2012-07-24T11:51:13.537 に答える