我有一個接受GET,POST值作爲參數的Web服務。到目前爲止,我用使用一個簡單的捲曲腳本調用數據,如下:我可以使用PHP/CURL同時發佈JSON正文和POST值嗎?
http://localhost/service/API.php?key=some_password&request=some_request&p1=v1&p2=v2
這是利用成功發佈「CURLOPT_POSTFIELDS」:
$base_args = array(
'key' => 'some_password',
'request' => 'some_request',
);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
的問題是,我也需要張貼JSON正文以此服務。我發現這可以通過使用「CURLOPT_POSTFIELDS」來完成,但也發現我無法同時使用POST和JSON。
$data_string ="{'test':'this is a json payload'}";
$ch = curl_init('http://localhost/service/API.php');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen($data_string)));
$result = curl_exec($ch);
echo ($result); // string returned by the service.
我可以設置POST值,或設置JSON正文,但不能同時設置。有沒有辦法推動兩種不同類型的價值觀?
身在POST請求後數據 – 2014-09-22 02:09:13