Heim > Backend-Entwicklung > PHP-Tutorial > Wie formatiere ich CURLOPT_POSTFIELDS in cURL-POST-Anfragen richtig?

Wie formatiere ich CURLOPT_POSTFIELDS in cURL-POST-Anfragen richtig?

Linda Hamilton
Freigeben: 2024-12-25 07:08:09
Original
902 Leute haben es durchsucht

How to Properly Format CURLOPT_POSTFIELDS in cURL POST Requests?

CURLOPT_POSTFIELDS in Curl für POST-Anfragen

Wenn Sie Curl zum Ausführen einer POST-Anfrage verwenden und die Option CURLOPT_POSTFIELDS angeben, ist es wichtig, Folgendes zu berücksichtigen entsprechendes Format. Erwägen Sie beispielsweise die Veröffentlichung von zwei Feldern, „first“ und „last“:

„first=John&last=Smith“

String Formatting

If Beim Senden einer Zeichenfolge als POST-Daten sollte diese URL-codiert sein, um eine ordnungsgemäße Zeichencodierung sicherzustellen. Der folgende Code demonstriert dies:

$data = urlencode("first=John&last=Smith");
Nach dem Login kopieren

Array-Formatierung

Wenn die POST-Daten jedoch ein Array sind, müssen sie dem „key => value“ folgen. Format:

$data = [
    'first' => 'John',
    'last' => 'Smith'
];
Nach dem Login kopieren

In diesem Fall setzt Curl den Content-Type-Header automatisch auf „multipart/form-data“.

Content-Type-Header

Aus Gründen der besseren Kompatibilität wird empfohlen, den Content-Type-Header explizit festzulegen. Um es beispielsweise auf „application/json“ zu setzen:

curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
Nach dem Login kopieren

Verwenden Sie http_build_query()

Alternativ können Sie, anstatt die Abfragezeichenfolge manuell zu erstellen, http_build_query von PHP verwenden ()-Funktion kann verwendet werden:

$query = http_build_query($data, '', '&');
curl_setopt($ch, CURLOPT_POSTFIELDS, $query);
Nach dem Login kopieren

Diese Funktion übernimmt die URL-Kodierung und korrekte Schlüssel=Wert-Formatierung nahtlos.

Das obige ist der detaillierte Inhalt vonWie formatiere ich CURLOPT_POSTFIELDS in cURL-POST-Anfragen richtig?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage