2012-01-24 9 views
5

Sto cercando di capire come utilizzare il client Jersey per inviare sia i parametri della richiesta che il corpo della richiesta di un'operazione POST.Utilizzo del client jersey per eseguire un'operazione POST con i parametri di richiesta e un corpo di richiesta

Attualmente so come farlo entrambi in questo modo individualmente, ma non insieme.

Da qui: Using the Jersey client to do a POST operation

ho ottenuto questo per i parms richiesta:

MultivaluedMap formData = new MultivaluedMapImpl(); 
formData.add("name1", "val1"); 
formData.add("name2", "val2"); 
ClientResponse response = webResource.type("application/x-www-form-urlencoded").post(ClientResponse.class, formData); 

E per il corpo della richiesta posso effettuare le seguenti operazioni:

String jsonObject ="... valid json object"; 
webResource.type(MediaType.APPLICATION_JSON_TYPE).post(String.class, jsonObject); 

Come faccio postare entrambi i parametri di richiesta con un corpo di richiesta?

Grazie

risposta

8

Ho pensato fuori ..

webResource.queryParam("key", "value").type(MediaType.APPLICATION_JSON_TYPE).post(String.class, jsonObject); 
+2

ratti, proprio mentre stavo per scrivere che: http://jersey.java.net/nonav/apidocs/1.4/jersey /com/sun/jersey/api/client/WebResource.html#queryParams(javax.ws.rs.core.MultivaluedMap) –

+1

grazie! Apprezzo lo sforzo comunque. – technocrat

Problemi correlati