"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como enviar várias imagens em uma solicitação cURL POST?

Como enviar várias imagens em uma solicitação cURL POST?

Publicado em 2024-11-08
Navegar:876

How to Send Multiple Images in a cURL POST Request?

Usando matrizes em solicitações cURL POST

Na tentativa de enviar uma matriz de imagens usando cURL, os usuários podem encontrar problemas onde apenas o primeiro o valor da matriz é transmitido. Esta questão explora como corrigir esse problema.

O código original parece ter uma pequena falha na estrutura do array. Para resolver isso, é recomendado usar http_build_query para formatar corretamente o array:

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

$fields_string = http_build_query($fields);

Esta modificação garante que o array seja codificado corretamente em uma string de consulta. O código atualizado abaixo incorpora esta alteração:

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

Com este código atualizado, o array de imagens será enviado corretamente na solicitação POST. A API receberá ambas as imagens conforme esperado.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3