如何在Java RESTful Web服务中实现CORS?
我不熟悉Java RESTful Web服务 以下是我的Java代码:如何在Java RESTful Web服务中实现CORS?,java,web-services,Java,Web Services,我不熟悉Java RESTful Web服务 以下是我的Java代码: @Path("ConversionService") public class FeetToInchAndInchToFeetConversionService { @GET @Path("/InchToFeet/{i}") @Produces(MediaType.TEXT_XML) public String convertInchToFeet(@PathParam("i")
@Path("ConversionService")
public class FeetToInchAndInchToFeetConversionService {
@GET
@Path("/InchToFeet/{i}")
@Produces(MediaType.TEXT_XML)
public String convertInchToFeet(@PathParam("i") int i) {
int inch=i;
double feet = 0;
feet =(double) inch/12;
return "<InchToFeetService>"
+ "<Inch>" + inch + "</Inch>"
+ "<Feet>" + feet + "</Feet>"
+ "</InchToFeetService>";
}
@Path(“转换服务”)
公共类FeetIn和InchToFeetConversion服务{
@得到
@路径(“/InchToFeet/{i}”)
@生成(MediaType.TEXT\u XML)
公共字符串convertInchToFeet(@PathParam(“i”)int i){
int英寸=i;
双足=0;
英尺=(双)英寸/12;
返回“”
+“”+英寸+“”
+“”+英尺+“”
+ "";
}
我能够运行该服务并可以看到输出
这里我需要在我的服务中实现CORS的帮助,您能告诉我如何在Java代码中编写CORS吗
我们是否需要在单独的类中编写jersy筛选器,或者是否有可能在我的Java代码中直接包含“Access Control Allow Origin”、“*”。您可以通过添加上下文参数访问
HttpServletResponse
:
public String convertInchToFeet(@PathParam("i") int i, @Context HttpServletResponse response) {
response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Credentials", "true");
response.setHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS, HEAD");
//...
在jQuery中:
$.ajax({
crossDomain: true,
//...
在添加了头之后,它也不工作了,我得到了相同的跨源域错误。我从javascript调用服务,我们需要在java脚本中也添加相同的吗