使用curl发布JSON数组 [英] post JSON array using curl

查看:280
本文介绍了使用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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆