cURL POST リクエストで複数の画像を送信するには?

Mary-Kate Olsen
リリース: 2024-11-02 23:21:30
オリジナル
369 人が閲覧しました

How to Send Multiple Images in a cURL POST Request?

cURL POST リクエストでの配列の使用

cURL を使用して画像の配列を送信しようとすると、最初の画像のみが送信されるという問題が発生する可能性があります。配列値が送信されます。この質問では、この問題を修正する方法を検討します。

元のコードには、配列構造に小さな欠陥があるようです。これを解決するには、http_build_query を使用して配列を正しくフォーマットすることをお勧めします。

<code class="php">$fields = array(
    'username' => "annonymous",
    'api_key' => urlencode("1234"),
    'images' => array(
        urlencode(base64_encode('image1')),
        urlencode(base64_encode('image2'))
    )
);

$fields_string = http_build_query($fields);</code>
ログイン後にコピー

この変更により、配列がクエリ文字列に正しくエンコードされるようになります。以下の更新されたコードには、この変更が組み込まれています。

<code class="php">extract($_POST);

$url = 'http://api.example.com/api';
$fields = array(
    'username' => "annonymous",
    'api_key' => urlencode("1234"),
    'images' => array(
        urlencode(base64_encode('image1')),
        urlencode(base64_encode('image2'))
    )
);

$fields_string = http_build_query($fields);

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields_string);

$result = curl_exec($ch);
echo $result;

curl_close($ch);</code>
ログイン後にコピー

この更新されたコードでは、画像の配列が POST リクエストで正しく送信されます。 API は期待どおりに両方の画像を受け取ります。

以上がcURL POST リクエストで複数の画像を送信するには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート