在RESTeasy中是否有任何方式支持X-HTTP-Method-Override请求标头(自动/透明)?
这将使支持无法发送PUT/DELETE请求的客户端变得更加容易.
是的,重写POST不太理想,但我认为使用X-HTTP-Method-Override的Google约定是合理/方便的解决方法.
如果RESTeasy可以自动使用X-HTTP-Method-Override标头调度POST请求,那将节省大量时间.我认为Jersey只是通过过滤方法添加了这样的东西,但我更喜欢坚持使用RESTeasy.
最近我遇到了同样的问题,我发现最好的解决方案是:
@Provider
@PreMatching
public class OverrideHttpMethodFilter implements ContainerRequestFilter {
@Override
public void filter(ContainerRequestContext requestContext)
throws IOException {
String receivedMethod = requestContext.getMethod();
String methodFromHeader = requestContext.getHeaderString("X-HTTP-Method-Override");
if (receivedMethod != null && !receivedMethod.equals(methodFromHeader)) {
requestContext.setMethod(methodFromHeader);
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2086 次 |
| 最近记录: |