curl linux 数组参数,使用curl发布JSON数组

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)

);

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;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值