【发布时间】:2016-08-15 19:51:24
【问题描述】:
我想知道它是否像我目前尝试实现的那样难。我在我的 RESTEasy 应用程序中使用 Some Interceptor 来保证安全。拦截器实现javax.ws.rs.container.ContainerRequestFilter。
我使用这样的代码来访问请求数据:
if (((PostMatchContainerRequestContext) requestContext).getHttpRequest().getHttpMethod().equals("GET")) {
requestedId = Long.parseLong(requestContext.getUriInfo().getQueryParameters().get("id").get(0));
} else {
postDataMap = getPostData(requestContext);
}
和
private LinkedHashMap getPostData(ContainerRequestContext requestContext) {
Object obj = null;
try {
String result = IOUtils.toString(requestContext.getEntityStream());
ObjectMapper mapper = new ObjectMapper();
obj = mapper.readValue(result, Object.class);
System.out.println(obj);
} catch (IOException e) {
e.printStackTrace();
}
return (LinkedHashMap) obj;
}
但是以这种方式访问请求数据似乎很荒谬。现在我想访问DELETE-Request 数据但找不到任何解决方案。有没有更合适的方法来实现我目前正在做的事情?
【问题讨论】: