Java REST アプリケーションで例外が発生した場合、HTTP リクエストの原因に関するさまざまな情報をログに記録したいと考えています。
コンテキスト インジェクションを使用して、リクエストの URI と HTTP ヘッダーを取得できます
@Context
private UriInfo uriInfo;
@Context
private HttpHeaders headers;
しかし、HTTP メソッド (GET、PUT、...) を取得するにはどうすればよいでしょうか?
ジャージーを使用しています。これがあなたに当てはまるかどうかはわかりませんが... :
import javax.servlet.http.HttpServletRequest;
@Context final HttpServletRequest request
Request
クラスにはメソッドがありますgetMethod()
。使用された HTTP メソッドを返します。
通常、残りのメソッドを1つのhttpメソッドに制限しています
@GET
@Produces("text/plain")
public String getClichedMessage() {
// Return some cliched textual content
return "Hello World";
}