Restlet-POST mit JSON
Wie implementiere ich Restlet-Funktion, die akzeptiert JSON-post?
Und wie Teste ich das mit curl?
Dank
InformationsquelleAutor portoalet | 2010-01-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wie implementiere ich Restlet-Funktion, die akzeptiert JSON-post?
Und wie Teste ich das mit curl?
Dank
InformationsquelleAutor portoalet | 2010-01-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
Mit Restlet 2, können Sie entweder:
test der entity-media-Typs-Kompatibilität in
@Post acceptRepresentation(Representation entity)
:oder verwenden Sie
@Post
mit einem oder zwei Parametern:Finden Sie unter diesen links:
(Mit Restlet 1, würden Sie brauchen, um zu testen, die Art der Einheit.)
Der 2. link ist kaputt.
InformationsquelleAutor Bruno
Als zu schreiben, dass diese Antwort (2 Jahre nach deiner Frage), Restlet 2.1 erfordert eine entsprechende Abhängigkeiten erfüllt, um richtig zu konsumieren und reagieren mit JSON. Punkt ist, abgesehen von "
Unsupported media type
" Antwort, es gibt nicht viel Ahnung, was Los ist intern.Aktivieren JSON media type, müssen Sie in Abhängigkeit von
org.restlet.ext.jackson
; wenn Sie brauchen, um die Unterstützung von XML-und JSON, die Sie brauchen, um Jackson den ERSTEN und dannorg.restlet.ext.xstream
wie XStream ist auch in der Lage JSON-Darstellungen, aber die Umsetzung ist eher schlecht (wie beschrieben in restlet docs, dies ist die empfohlene Reihenfolge von restlet Autoren).Dann, Sie nicht wirklich brauchen, um Medien-Typ in der annotation und die, die Sie gerade brauchen, um richtige
Content-Type
- header in der curl Anfrage, z.B.:login.json
enthält die eigentlichen JSON-Anfrage.@Post
annotierten Methode die AnnahmeLoginRequest
und reagiert mitLoginResponse
, sowohl in der Lage XML-und JSON-media-TypenIch hoffe, diese Antwort hilft jemand irgendwann. 🙂
InformationsquelleAutor Miro Hudak
Beispiel in Verbindung mit von Daniel Vassallo zeigt die eingestellten Daten mit Hilfe eines Formulars. Dies ist, wie zu senden, JSON:
Test mit curl:
Den single quotes (") um die Daten in den curl-Befehl sind wichtig.
InformationsquelleAutor Pallavi Anderson
Hier sind einige updates in Bezug auf diese alte Frage. Restlet unterstützt Methodensignaturen enthält Bohnen. In solchen Fällen, Restlet wird ein registrierter Konverter zu versuchen, zu konvertieren /füllen der empfangenen Nutzlast in eine bean-Instanz. Dies gilt auch beim senden von Inhalt an den client.
Hier ist das Beispiel einer Methode, mit der eine Anfrage
POST
:Die bean kann einfach die folgende Struktur:
Macht die Arbeit solcher Mechanismus, können Sie einfach fügen Sie die Erweiterung Jackson (
org.restlet.ext.jackson
) in Ihrem Klassenpfad befinden. Der entsprechende Konverter werden automatisch registriert unter der Haube.Curl-Anfrage ist einfach, und die zu sendenden Daten angegeben werden
Hoffe es hilft dir,
Thierry
InformationsquelleAutor Thierry Templier
Hier ist eine gute und vollständige Beispiel einer Restlet akzeptiert JSON per POST:
Und eine grundlegende Anleitung zum test RESTful web-services mit cURL:
Der erste link ist sehr alt. Viele Dinge werden von Hand gemacht, wo Sie getan werden könnte, automatisch. gewarnt
Der erste link ist tot.
InformationsquelleAutor Daniel Vassallo
InformationsquelleAutor Aravind Cheekkallur