我使用Jax-rs 2创建了一个rest webservice。它使用AsyncResponse返回响应。如何将CORS支持添加到其余Web服务?因此,任何人都可以访问它而不会遇到任何跨域问题?

我的样本剩余Web服务如下

@GET
@Path("/test")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)

public void test(@Suspended AsyncResponse asyncResponse){
        asyncResponse.resume(Response.ok().build());
}


谢谢!

最佳答案

RestEasy具有CorsFilter。但是,由于您使用的是Glassfish,因此您很可能会使用Jersey。泽西似乎没有我们可以使用的此类课程。就是说,RestEasy的CorsFilter实现了ContainterRequestFilterContainerResponseFilter(注意,这是Jersey 2.x(JAX-RS 2.0)功能)。


See Filters and Interceptors for more information


您还可以查看CorsFilter here at GrepCode的源代码。您基本上将想要实现类似于该类的东西,然后将其注册为应用程序中的一个实例。

08-07 00:23