我使用Jax-rs 2创建了一个rest webservice。它使用AsyncResponse来返回响应。如何为我的其他Web服务添加CORS支持?那么任何人都可以在没有任何跨域问题的情况下访问它吗?
我的示例休息网络服务如下
@GET
@Path("/test")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public void test(@Suspended AsyncResponse asyncResponse){
asyncResponse.resume(Response.ok().build());
}
谢谢!
答案 0 :(得分:0)
RestEasy拥有CorsFilter
。但由于您使用的是Glassfish,因此您最有可能使用Jersey。泽西岛似乎没有任何我们可以使用的课程。也就是说,RestEasy的CorsFilter
实现ContainterRequestFilter
和ContainerResponseFilter
(注意,这是Jersey 2.x(JAX-RS 2.0)功能)。
您还可以查看CorsFilter
here at GrepCode的源代码。你基本上想要实现类似于该类的东西,然后将它注册为与应用程序的单例。