Envoi de plusieurs paramètres de requête du client Client - programmation en cascade ou par itération
Vous pouvez examiner l'exemple suivant si vous voulez envoyer plusieurs paramètres de requête du côté client vers le serveur.
Pourquoi et quand exécuter cette tâche
Remarque : Généralement, la méthode
utilisée pour placer plusieurs paramètres de requête ,
dans un objet WebTarget est d'utiliser le mode de programmation en
cascade suivant :
javax.ws.rs.core.Response response = client.target(...).queryParam(key, value).queryParam(key, value).queryParam(key, value).request.get();
Toutefois, dans certains cas, le mode de programmation en cascade
n'est pas applicable car le nombre de paires clé-valeur est souple
et ne peut pas être prévu. Dans ce cas, vous pouvez utiliser le mode
de programmation par itération suivant :Map<String, String> queryStrings;
...
javax.ws.rs.client.WebTarget target = client.target(....);
for (String key: queryStrings.keySet()){
String value = queryStrings.get(key);
target = target.queryParam(key, value); //It is important to know queryParam method won't update current WebTarget object, but return a new one.
}
}
javax.ws.rs.core.Response response = target.request().get();