Play 2.0 So veröffentlichen Sie MultipartFormData mit WS.url oder WS.WSRequest

8

In der Java-Http-Anfrage können wir dies tun, um einen mehrteiligen HTTP-POST zu erstellen.

%Vor%

Wie kann ich dasselbe mit WS.url oder WS.WSRequest erreichen?

%Vor%     
angelokh 05.06.2012, 01:06
quelle

5 Antworten

5

Das ist schlampig und kann definitiv aufgeräumt werden, aber hier ist, was ich getan habe, damit es funktioniert. Fühlen Sie sich frei, dies so viel besser zu machen.

%Vor%

Dies alles verwendet Stücke, die bereits im Play 2.0-Framework enthalten sind.

    
Christopher Villalobos 10.09.2013, 15:41
quelle
3

Die einzige Lösung für den Moment, ohne auf externe Bibliotheken angewiesen zu sein, scheint die Multipart Formulardatenanfrage manuell zu erstellen. Dies ist ein Beispiel, wie es gemacht werden kann, mit play.libs.WS.url :

%Vor%

data wäre ein java.util.Map<String, String> , das alle Name / Wert-Paare enthält, die Sie als Formularparameter übergeben möchten. randomString ist ein randomisierter Wert, um die Grenze von Anforderung zu Anforderung zu ändern. Das Hinzufügen von Binärdaten würde genauso funktionieren.

Ссылка ist ein guter Ort, auf den Sie sich beziehen können, um die Spezifikationen zu verstehen.

    
Nebojsa Ristin 27.05.2014 16:49
quelle
3

Arbeitsbeispiel für Play 2.3 unter Verwendung des obigen Ansatzes, außerdem contentType beim Hochladen der Datei hinzugefügt.

%Vor%     
live_alone 05.04.2017 10:39
quelle
0

Es scheint, basierend auf der Play-API-Dokumentation, dass für mehrteilige POST-Bodys keine eingebauten Komponenten vorhanden sind.

Es ist jedoch möglich, mit der Methode

einen eigenen mehrteiligen Textkörper zu erstellen %Vor%

mit einem Typ T Ihrer Wahl und den entsprechenden Typen Writeable und ContentTypeOf.

Aber das würde bedeuten, dass mehrteilige Körper mit HTTP arbeiten.

    
Romain Sertelon 13.02.2013 10:17
quelle
0

Wie Romain Sertelon vorgeschlagen hat, können Sie ein Writeable schreiben, um diesen Fall zu behandeln. Hier ist eine, die ich geschrieben habe:

%Vor%

So verwenden Sie es:

%Vor%     
cdmckay 24.06.2015 05:11
quelle

Tags und Links