使用curl发布JSON数组 [英] post JSON array using curl
本文介绍了使用curl发布JSON数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在将带有cURL的JSON数组发布到我的API时遇到了问题,
Hi I'm having a problem with posting a JSON array with cURL to my API,
JSONData='
{
"customerCode": "DUMMY",
"fromLocation": {
"suburbName": "MELBOURNE",
"postCode": "3000",
"state": "VIC"
},
"toLocation": {
"suburbName": "SYDNEY",
"postCode": "2000",
"state": "NSW"
},
"goods": [
{
"pieces": "2",
"weight": "3",
"width": "10",
"height": "20",
"depth": "12",
"typeCode": "ENV"
}
]
} ';
我正在使用此代码来传递数组,但它不起作用
and i am using this code to pass array but it does not work
$data_string = stripslashes($JSONData);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen($data_string)
));
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, array('JSONData'=>$data_string)
);
请帮助我传递JSON数组.
Please Help me to pass JSON array.
推荐答案
$username='xxx';
$password='xxx';
$url='http://apiurl';
$opts = array('http' =>
array(
'method' => 'POST',
'header' => array('Content-type: application/json', 'Authorization: Basic '.base64_encode($username.':'.$password)),
'content' => $JSONData
)
);
$context = stream_context_create($opts);
$response = file_get_contents($url, false, $context);
echo 'response: '.$response;
这篇关于使用curl发布JSON数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文