2016-10-10 1 views
0

Versucht, die Anfrage Körper mit mehrstufigen Daten mit Ruhe-versichert in der folgenden Weise zu senden.Wie die Anfrage Körper mit Multi-Level-Daten mit Ruhe-Assured übergeben

Anfrage Körper:

{ 
    "phoneNumber":1217071016, 
    "details": 
    [ 
    { 
      "id":"123", 
     "name":"New", 
     "email":"[email protected]" 
    }, 

    { 
     "id":"234", 
     "name":"next", 
     "email":"[email protected]" 
    } 


    ] 

} 

@Test public void gene() {

Map<String,String> userDetails = new HashMap<>(); 

    userDetails.put("phoneNumber", "1217071016"); 
    userDetails.put("details.Id", "241342"); 
    userDetails.put("details.name", "New Name"); 
    userDetails.put("details.email", "[email protected]"); 

      Response response = given() 

      .contentType("application/json") 

      .queryParam("access_token", "LL6rX8LRP7") 

      .body(userDetails) 

      .post("http://site/rest/try/update"); 

}

Wenn in der obigen Art und Weise gesendet, die schlechte Anfrage zu bekommen.

Wie diese Art von Daten in dem obigen Code

+0

haben sich Ihnen für Anfragen und Antwort auf die Anmeldung? Wie genau sehen sie aus? – RocketRaccoon

+0

@RocketRaccoon protokolliert die Anfrage nicht. Ich bin mir nicht sicher, wie ich die Anfrage ausdrucken soll. Können Sie mich führen –

+0

Verwenden Sie 'gegeben(). Log(). Alle()' – RocketRaccoon

Antwort

0

Sie benötigen einen Map<String, String> nicht passieren, aber ein Map<String, Object>:

Map<String, Object> userDetails = new HashMap<>(); 
Map<String, Object> details = new HashMap<>(); 

details.put("id", "241342"); 
details.put("name", "New Name"); 
details.put("email", "[email protected]"); 

userDetails.put("phoneNumber", "1217071016"); 
userDetails.put("details", Arrays.asList(details, details)); 
+0

wird immer noch der Körper konstruiert Falsche Weg. Körper: '{ "E-Mail": "[email protected]", "name": "fjkenrfiw", "id": "4434353535543" }' –

+0

Aktien Code bitte – RocketRaccoon

+0

es scheint, Sie sind Setzen Sie nur "Details" Karte auf Anfrage, es sollte 'userDetails' sein – RocketRaccoon

Verwandte Themen