
curl のグラフ API を使用して Facebook にファイルをアップロードするリクエストを行う方法
このリクエストを行っていますが、エラーが発生します:
curl https://graph.facebook.com/<id>/photos -F "[email protected]" -d "message=Me" -v
エラー:
選択できる HTTP リクエストは 1 つだけです
答え1
と は異なるコンテンツ タイプを使用するため、一緒に使用することはできません。 が必要です-F
。そのため、次のように試してください。-d
multipart/form-data
https://graph.facebook.com/<id>/photos -F "[email protected]" -F "message=Me" -v
からman curl
:
-F/--フォーム
(HTTP) これにより、curlはユーザーが送信ボタンを押した入力済みフォームをエミュレートします。これにより、curlはContent-Typeを使用してデータをPOSTします。マルチパート/フォームデータRFC2388 に従って、バイナリ ファイルなどのアップロードが可能になります。'content' 部分をファイルに強制するには、ファイル名の前に @ 記号を付けます。ファイルからコンテンツ部分だけを取得するには、ファイル名の前に < 記号を付けます。@ と < の違いは、@ はファイルのアップロードとしてファイルを投稿に添付するのに対し、< はテキスト フィールドを作成し、そのテキスト フィールドの内容をファイルから取得する点です。