Wie konvertiert org.glassfish.grizzly.utils.BufferInputStream zu JSON in Mule?
Auf meine ersten Schritte mit Mule ich Schreibe eine basic-Http-Proxy.
Derzeit leite ich die Anfrage an die api-server und was ich gerne machen würde, ist das Lesen der Nutzlast, die ich von vor der Antwort an den client.
Wenn ich versuche, melden Sie es mit #[payload] es druckt
org.glassfish.grizzly.utils.BufferInputStream@2306df30
Wie kann ich drucken Sie es richtig im JSON-format?
Der vollständige code:
<flow name="proxy">
<http:listener config-ref="http-lc-0.0.0.0-8081" path="![p['proxy.path']]" parseRequest="false"/>
<http:request config-ref="http-request-config" method="#[message.inboundProperties['http.method']]"
path="#[message.inboundProperties['http.request.path'].substring(message.inboundProperties['http.listener.path'].length()-2)]" parseResponse="false">
<http:request-builder>
<http:query-params expression="#[message.inboundProperties.'http.query.params']"/>
</http:request-builder>
<http:success-status-code-validator values="0..599" />
</http:request>
<logger doc:name="Logger" level="INFO" message="Payload #[payload]"/>
InformationsquelleAutor Luca S. | 2016-09-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die Nutzlast nach der HTTP-Anfrage ist in der Regel im stream-format, ref:- https://docs.mulesoft.com/mule-user-guide/v/3.7/http-request-connector
Es gibt zwei Möglichkeiten, wie Sie die Nutzlast nach
http:request
1)
<object-to-string-transformer doc:name="Object to String"/>
nachhttp:request
oder
2) mit einem logger und die Verwendung der MEL-Ausdruck
<logger message="#[message.payloadAs(java.lang.String)]" level="INFO" doc:name="Logger"/>
InformationsquelleAutor Anirban Sen Chowdhary
Versuchen
#[message.payloadAs(java.lang.String)]
die melden sich die erwartete Ausgabe.Hoffe, das hilft.
InformationsquelleAutor AnupamBhusari
Die http-Komponente senden als InputStream verwenden,So byte-array zu string Transformator nach http-Komponente.Wenn Sie nur drucken wollen, können Sie dies verwenden: #[- Nachricht.payloadAs(java.lang.String)] aber Sie tun möchte, jede operation einfach per drag-and-drop ein byte-array zu string Transformator
InformationsquelleAutor Satheesh Kumar
Einfachste Weg ist, um Sie nur
<object-to-string-transformer doc:name="Object to String"/>
nach http-request-Komponente und dann einen logger mit#[payload]
.InformationsquelleAutor Swati Vatyani