docker十字架filter

我已配置Jetty的跨源filter,但我继续收到以下错误。 有谁知道什么是错的以及如何解决它? 错误消息下面是我的覆盖描述符(即补充web.xml)

错误:

Origin http://localhost:8090 is not allowed by Access-Control-Allow-Origin. 

覆盖描述符:

    cross-origin org.eclipse.jetty.servlets.CrossOriginFilter  allowedOrigins *   allowedMethods *   allowedHeaders *    cross-origin /*   

请求标题

 Accept:*/* Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3 Accept-Encoding:gzip,deflate,sdch Accept-Language:en-US,en;q=0.8 Access-Control-Request-Headers:Origin, Content-Type, Accept Access-Control-Request-Method:POST Connection:keep-alive Host:localhost:8080 Origin:http://localhost:8090 Referer:http://localhost:8090/home User-Agent:Mozilla/5.0 (X11; Linux i686) AppleWebKit/535.8 (KHTML, like Gecko) Chrome/17.0.942.0 

响应标题

 Allow:POST,GET,OPTIONS,HEAD Content-Length:0 Date:Wed, 30 Nov 2011 02:13:21 GMT Server:Jetty(7.5.4.v20111024) 

阿罗哈,

我也争吵了一段时间,发现最后一个节点需要:

  cross-origin /*  

  cross-origin /*  

这是我发现的帮助我的链接: wiki.eclipse.org/Jetty/Feature/Cross_Origin_Filter

在我更新了我的web.xml文件并重新启动了jetty服务器之后,我能够使用jQuery ajax调用来创建跨域请求。

在对部署到GAE的Web应用程序进行跨域调用时,我遇到了这个问题。 您可以为Servlet响应添加显式标头,例如:

 public void doGet(HttpServletRequest req, HttpServletResponse res) throws IOException { res.addHeader("Access-Control-Allow-Origin", "*"); ... } 

并确保在WAR的根目录中有一个crossdomain.xml策略文件,例如:

    

HTH。

我在Jetty Web Server中遇到了与ActiveMQ Ajax相同的问题。 我的问题是,允许的头字段不接受“*”forms的通配符

为了使ActiveMQ Ajax工作,我还必须将“选项”方法添加到allowedMethods。

来自web.xml的跨源filter:

  cross-origin org.eclipse.jetty.servlets.CrossOriginFilter  allowedOrigins *   allowedMethods GET,POST,OPTIONS,DELETE,PUT,HEAD   allowedHeaders origin, content-type, accept, authorization    cross-origin *  

对我来说(jetty-version 8.1.5.v20120716),只有’web.xml’中的这些行有助于:

  cross-origin org.eclipse.jetty.servlets.CrossOriginFilter  allowedOrigins *   allowedMethods GET,POST,DELETE,PUT,HEAD   allowedHeaders origin, content-type, accept    cross-origin /*  

我将日志级别更改为DEBUG并从jetty控制台日志获取信息(如’GET,POST,DELETE,PUT,HEAD’和’origin,content-type,accept’)。 例如:

DEBUG CrossOriginFilter:359 – 方法DELETE是允许的方法之一[GET,POST,DELETE,PUT,HEAD] 19:14:28,413

DEBUG CrossOriginFilter:389 – 标题[origin,content-type,accept]不在允许的标题中[*]

然后我用$ .ajax({url:’anotherHost’,输入:’DELETE’,..})检查结果

在浪费了我很多时间之后刚刚打开了一个错误报告:

https://bugs.eclipse.org/bugs/show_bug.cgi?id=384847

还要注意,参数值中的通配符大多不受支持。 (即允许的标题)