НЕОБРАБОТАННЫЙ ПОСТ с использованием cURL в PHP


Как я могу сделать НЕОБРАБОТАННЫЙ ПОСТ на PHP с помощью cURL?

Необработанный пост, как в без какой-либо кодировки, и мои данные хранятся в строке. Данные должны быть отформатированы следующим образом:

... usual HTTP header ...
Content-Length: 1039
Content-Type: text/plain

89c5fdataasdhf kajshfd akjshfksa hfdkjsa falkjshfsa
ajshd fkjsahfd lkjsahflksahfdlkashfhsadkjfsalhfd
ajshdfhsafiahfiuwhflsf this is just data from a string
more data kjahfdhsakjfhsalkjfdhalksfd

Один из вариантов - вручную записать весь отправляемый HTTP-заголовок, но это кажется менее оптимальным.

В любом случае, могу ли я просто передать параметры curl_setopt(), в которых говорится использовать POST, использовать текст/обычный и отправлять необработанные данные из $variable?

Author: Peter Mortensen, 2009-05-16

1 answers

Я только что нашел решение, своего рода ответ на свой собственный вопрос на случай, если кто-нибудь еще наткнется на него.

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL,            "http://url/url/url" );
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt($ch, CURLOPT_POST,           1 );
curl_setopt($ch, CURLOPT_POSTFIELDS,     "body goes here" ); 
curl_setopt($ch, CURLOPT_HTTPHEADER,     array('Content-Type: text/plain')); 

$result=curl_exec ($ch);
 186
Author: The Unknown, 2009-05-16 01:36:41