Magento 2 Rest Api - 请求参数中的关联数组

时间:2017-07-27 16:25:10

标签: rest api magento magento2

我正在尝试在magneto2中创建自定义Api。它是一个POST CALL,我试图发送下面的关联数组,

{
    "data": {       
        "testData": {
            "title": "Test 01",         
            "place": {
                "key": "value"
            }
        }
    }
}

对于上述格式,我将param注释作为string[]。它的工作如果我没有传递place数据。但是,如果我将place数据传递给下面的投掷错误,

Array to string conversion

实际问题是我无法在请求参数中传递关联数组。有人可以帮我这个吗?

我也试过创建一个自定义对象类型。在那,我也只能给string[]类型。所以我不能在其中添加越来越多的json数据。

1 个答案:

答案 0 :(得分:0)

你可以在PHP中创建数组并使用函数来编码为json,例如

    $arr= array( 'val1'=>array('your val1', 'your val2'),
    'val2'=>array('your val1', 'your val2'),
    );

    $data = json_encode($arr);
// if you want to set in url
$client = new Zend_Http_Client($uri);
$client->setRawData($data, 'application/json')->request('POST');

您需要使用json_decode稍后获取您的值。 希望这有帮助!