2017-08-15 10 views
1

私はPOSTリクエストを介してJSON形式のユーザ詳細をアップロードできるREST Webサービスがあります。それはあなたが、私はまた、ユーザーごとに複数のエントリを送信するオプションがあり、以下のJSONで見ることができるように、私は(Codenameone POSTクエリで複数のJSONサブエントリを追加する方法

post.addArgument("Name",entry.get("Name").toString()); 
post.addArgument("JobRole",entry.get("JobRole").toString()); 

「エントリ」のArrayList < MapStringがある、オブジェクト>

を使用してこれを行うことができますように見えますこの場合には、このJSONの例のようにアドレスの詳細):

{ 

    "Name":"Fred Flintstone", 

    "JobRole":"Quarry worker", 

    "Address":[ 

    { 

     "Address1" :"Boulder House", 

     "Address2" :"Rock Way", 

     "Address3" :"Rock City" 

    } 

    ] 
} 

私が使って試してみました

post.addArgumentArray("Address",entry.get("Address1").toString,entry.get("Address2")) 

アドレスのユーザーのエントリを結合しますが、「400:Bad Request」が返されます。では、このような複数のエントリーを私の要求にどのように追加するのですか?

よろしく

答えて

1

これらはPOST形式の引数であり、彼らは(それはHTMLでフォームを送信ようなものだ)ではないJSONなど、通常のHTTP引数として追加されます。

Map<String, Object> jsonData = Rest.post(myUrl).body(bodyValueAsString).getAsJsonMap(); 
:あなたは new terse REST APIを使用することができますまた

ConnectionRequest cr = new ConnectionRequest(url, true) { 
    protected void buildRequestBody(OutputStream os) throws IOException { 
     // snipped this but you should get the rest... 
     os.write("{\"Name\":\"Fred Flintstone\",\"JobRole\":\"Quarry worker\", ..."); 
    } 
}; 

:あなたが探しているものを

は何かに似ています

関連する問題