2017-07-27 14 views
6

magneto2でカスタムApiを作成しようとしています。私は以下のように連想配列を送信しようとしていますここで、そのPOSTのCALL、私はstring[]としてのparam注釈を与えている上記の形式についてMagento 2 Rest Api - アソシエイティブアレイinリクエストパラメータ

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

。その仕事私はそれにplaceデータを渡さなかった場合。私は、以下のようにplaceデータの投げるエラーを渡していた場合でも、

Array to string conversion 

実際の問題は、私は、要求のparamに連想配列を渡すことができないですです。誰でもこのことを教えてくれますか?

カスタムオブジェクトタイプも作成してみました。あまりにも私はstring[]タイプを与えることができます。だから私はそれ以上のjsonデータを追加することはできません。

答えて

1

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を使用する必要があります。 これが役立つことを願っています!

+0

はい。それはいいです。しかし、jsonデータを直接的に渡すための他のオプションはありますか? –

+0

emai id please? –

+0

別のオプションが必要な理由 直接送信するには、以下のリンクをクリックしてください。 https://stackoverflow.com/questions/21271140/curl-and-php-how-can-i-pass-a-json-through-curl-by-put-post-get – Pallavi

関連する問題