J'essaie d'effectuer un message avec play.api.libs.ws.ws mais je ne peux pas comprendre Comment définir les paramètres, mon code:
Promise<WS.Response> result = WS.url("http://localhost:9001").post("content");
7 Réponses :
Essayez de construire la demande comme ceci: la méthode url (java.lang.string URL) code> renvoie un
ws.wsrequestholder code > Référence qui peut être utilisée pour modifier la demande d'origine à l'aide d'appels chaînés sur
sequeryparamètre code>
. P> p>
Je pense que sa question, celle que j'ai aussi, c'est ce qui est "contenu"? Dans mon cas, il n'y a pas de contenu et la méthode post (), sans paramètre, n'existe pas
Je l'ai essayé avec .post ("") code> et cela a fonctionné aussi bien. Je vais devoir l'exécuter avec Wireshark, plus tard, pour déterminer exactement ce qu'il fait de ce "contenu". C'est plus facile que de lire le code, du moins pour moi.
hmm je suppose que je devrais vraiment commencer à regarder les importations!
I Utilisé accidentellement importer play.api.libs.ws.ws au lieu d'importer play.libs.ws;
Lorsque vous utilisez
Je pense qu'il peut y avoir quelque chose de mal avec votre configuration de votre sms.service.url code>, pour accepter cette demande sous forme de message, car cette chaîne est passée à la poste (
param1 = foo & param2 = bar code> ) n'est probablement pas correctement / strictement formaté comme une charge utile postale.
La bonne façon de faire la demande de blocage dans la lecture 2.1 est je l'ai essayé. Ça marche p> p>
La question est spécifiquement sur la post (), pas obtenir (). La poste nécessite un paramètre, obtenez-vous.
WS.url(url) .setContentType("application/x-www-form-urlencoded") .post("param1=foo¶m2=bar"); This method uses an HTTP POST method to send its form request. As seen from the official documentation of Play, you should had already known of the GET method.è¿ç§æ¹å¼æ¯ä½¿ç¨postæ¹å¼æäº¤è¡¨å请æ±ï¼è§äºplayç宿¹ææ¡£ï¼getæ¹å¼çä½ åºè¯¥å·²ç»ç¥éäºã
Il serait pratique si vous remplacez ci-dessus chinois par un anglais couramment utilisé.
Vous devez transmettre quelque chose qui peut être converti en JSON sérialisé. Cela fonctionne pour moi:
WS.url("https://www.someurl.com") .post(JsObject(Seq("theString" -> JsString(someString))))
La réponse acceptée est fausse, ou du moins trompeur. Le code affichera la chaîne qui publie le formulaire fort> fort> Contenu code> à
http: // localhost: 9001 /? Param1 = foo & param2 = bar code>, ce qui est Presque certainement pas ce que l'op voulait. Ce qui est beaucoup plus susceptible de fonctionner est p>
param1 = foo & param2 = bar code> à l'URL
http: // localhost: 9001 code>, qui est typiquement ce que le serveur veut. p> p>
@flurdy - Yikes, flèches minces, oui. Désolé!
duplicaté possible de Comment puis-je Définir des en-têtes pour ws.post () en jeu 2.1 Java