2014-01-16 26 views
0

我需要在PHP curl中複製相同的POST請求。請求參數應該在json中,響應也是json對象。PHP Curl - 如何做POST請求和參數應該是JSON格式的正文

Fiddler sample

{ 
"api_key": "scTrCT", 
"test": "true", 
"service_provider_list": [ 
    { 
     "facility_name": "ALL YOUR SMILE NEEDS DENTAL CENTERS", 
     "provider_name": "DRS. HERMAN AND MACK P.C", 
     "tax_id": "12345678 
    } 
], 
"payer_ids": [ 
    "00431" 
], 
"transaction_type": "270", 
"effective_date": "2014-01-12" 
} 

回答

0

請試試這個:

<?php 

$json = array(
    "api_key" => "scTrCT", 
    "test" => "true", 
    "service_provider_list" => array(
     "facility_name" => "ALL YOUR SMILE NEEDS DENTAL CENTERS", 
     "provider_name" => "DRS. HERMAN AND MACK P.C", 
     "tax_id" => "12345678" 
    ), 
    "payer_ids" => array(
     "00431" 
    ), 
    "transaction_type" => "270", 
    "effective_date" => "2014-01-12" 
); 

$json = json_encode($json); 

$ch = curl_init('http://gds.eligibleapi.com/v1.3/enrollment.json'); 
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $json); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
$result = curl_exec($ch); 
curl_close($ch); 

echo $result; 
+0

這工作..謝謝..但是,當我給出錯誤的API密鑰,它重新調校錯誤代碼22.小提琴手它返回的錯誤描述作爲無效Api「。我如何獲得描述。以下是用於捕獲錯誤的代碼。 $ error = curl_errno($ ch); curl_close($ ch); if($ error){$ error_codes = $ this - > _ get_curl_error_codes(); echo $ error; //。':'。$ error_codes [$ error]; die(); } – Anand

+0

我很高興聽到它!我很高興你沒有真正把你真正的API密鑰。 –

+0

如何捕獲所有異常(錯誤)? – Anand