Maison >développement back-end >tutoriel php >Comment envoyer plusieurs images dans une requête cURL POST ?

Comment envoyer plusieurs images dans une requête cURL POST ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-02 23:21:30401parcourir

How to Send Multiple Images in a cURL POST Request?

Utilisation de tableaux dans les requêtes POST cURL

En tentant d'envoyer un tableau d'images à l'aide de cURL, les utilisateurs peuvent rencontrer des problèmes où seul le premier la valeur du tableau est transmise. Cette question explore comment résoudre ce problème.

Le code original semble avoir un défaut mineur dans la structure du tableau. Pour résoudre ce problème, il est recommandé d'utiliser http_build_query pour formater correctement le tableau :

<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>

Cette modification garantit que le tableau est correctement encodé dans une chaîne de requête. Le code mis à jour ci-dessous intègre ce changement :

<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>

Avec ce code mis à jour, le tableau d'images sera correctement envoyé dans la requête POST. L'API recevra les deux images comme prévu.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn