Tomcat 泽西岛的CORS支持?

Tomcat 泽西岛的CORS支持?,tomcat,jersey,cors,Tomcat,Jersey,Cors,我已经看到了允许CORS支持的帖子…但是我尝试了一下,我的运气是0 以下是my angular.js for CORS上的函数: var config = { method: 'GET', url: "//localhost:8080/ScienceCompanionApp/service/bpms/task/5497d038-82da-4a4e-83bd-2ef01b30de1a", headers: { 'BPM-CON

我已经看到了允许CORS支持的帖子…但是我尝试了一下,我的运气是0

以下是my angular.js for CORS上的函数:

var config = {
        method: 'GET',
        url: "//localhost:8080/ScienceCompanionApp/service/bpms/task/5497d038-82da-4a4e-83bd-2ef01b30de1a",
        headers: {
            'BPM-CONTEXT-ID':'CONTEXT',
            'Accept': 'application/json',
            'Content-type': 'application/json'

        }

    }
    $http(config).success(function(data,status,headers){  //do stuff here }
我已将以下内容添加到我的web.xml中:

  <filter>
  <filter-name>CorsFilter</filter-name>
  <filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
</filter>
<filter-mapping>
  <filter-name>CorsFilter</filter-name>
  <url-pattern>/*</url-pattern>
</filter-mapping>
还是不走运:

我遗漏了什么吗?

执行以下步骤

创建一个过滤器类,比如 公共类CORSResponseFilter实现过滤器{

公共响应过滤器{

}

@凌驾 公共空间破坏{ //TODO自动生成的方法存根

}

public void doFilterServletRequest请求、ServletResponse响应、FilterChain抛出IOException、ServletException{

String method=HttpServletRequest request.getMethod

HttpServletResponse.addHeaderAccess-Control-Allow-Origin,*

if方法.equalsIgnoreCaseOPTIONS{

HttpServletResponse.addHeaderAccess-Control-Allow-Methods, POST、GET、OPTIONS、PUT、DELETE、HEAD

HttpServletResponse.addHeaderAccess-Control-Allow-Headers, 来源、接受、内容类型、授权

HttpServletResponse.addHeaderArry,来源

HttpServletResponse.addHeaderAccess-Control-Max-Age,1728000

返回; }

chain.doFilterrequest,响应; }

@凌驾 public void initFilterConfig arg0引发ServletException{

//TODO自动生成的方法存根

}

在web.xml中创建条目

<filter-name>CORSFilter</filter-name>

<filter-class>filter.CORSResponseFilter</filter-class>

<过滤器映射>

<filter-name>CORSFilter</filter-name>

<url-pattern>/*</url-pattern>

<filter-name>CORSFilter</filter-name>

<url-pattern>/*</url-pattern>

希望这对您有所帮助。

它需要来自服务器的cors响应头,而不仅仅是客户端ex ACAO、ACAM、头白名单、等等和白名单BPM-CONTEXT-ID…hi@dandavis我已经将它们添加到响应头中…我甚至还没有得到响应来点击我的服务器…正如您可以看到的那样,它有用于获取信息的记录器…但浏览器甚至没有做出响应对服务的调用。它附带一个403禁止。如果您使用自定义http头,则需要确保服务器响应选项http方法,而不仅仅是GET方法。这允许实际请求不显示,但在正确批准选项后会显示。如果您可以执行简单的jane GET-like,请将头移动到段落m、 您不需要选项支持。您使用的Jersey版本是什么?Jersey 2.10+的最新版本在正确调用@OPTIONS方法时遇到问题。我最终不得不在ContainerResponseFilter筛选器中添加标题以使其正常工作。