0
はジャージー2.22.2の下で実行されているRESTプロキシのこのコードを考えてみて失敗をログに記録しますResponse
の下にあるストリームからRESTレスポンスreadEntity(String.class)を介してペイロード
response.bufferEntity()
を使用すると、response.readEntity(String.class)
を複数回呼び出すことができます(バッファリングは機能しているようです)。しかし、Jerseyから返された応答はゼロバイトの応答を返します。
$ curl -m 5 -i -X POST -d '{"input_values": "abc"}' http://localhost:9000/services/rest/foo
HTTP/1.1 200 OK
Date: Thu, 27 Oct 2016 08:18:09 GMT
Keep-Alive: timeout=20
X-Type: default
Server: nginx
Content-Type: application/json; charset=UTF-8
Content-Length: 364
curl: (28) Operation timed out after 5000 milliseconds with 0 out of 364 bytes received
一部releventのドキュメントはこちらです:Response.readEntity
誰もが有効なResponse
を返す前に、Response
の内容をログに記録する方法を私に示していただけますか?
おそらく、ストリームを処理することなく、Response
エンティティを(ストリームを消費することなく)文字列に変換するための考え方がないかもしれません。