如何将Access-Control-Allow-Origin添加到jetty服务器

我有一个jetty服务器来运行我的Web服务。 最近我开发了一个使用Web服务的程序并遇到了Access-Control-Allow-Origin问题。

如何将Access-Control-Allow-Origin:*添加到jetty嵌入式服务器。

下面是webappcontext代码。

public WebAppContext buildWebAppContext(){ webAppContext = new WebAppContext(); webAppContext.setDescriptor(webAppContext + "/WEB-INF/web.xml"); webAppContext.setResourceBase("."); webAppContext.setContextPath("/posApplication"); webAppContext.setAttribute("webContext", webAppContext); return webAppContext; } 

谢谢。

在Web应用程序中设置org.eclipse.jetty.servlets.CrossOriginFilter

关于这个主题的老问题/答案: https : //stackoverflow.com/a/8454168/775715

请参阅CrossOriginFilter上的Jetty 文档中心 使用 :

快速开始

  1. 抓住你自己的jetty-servlets.jar副本。

  2. jetty-servlets.jar放在WEB-INF/lib

  3. 将以下内容添加到WEB-INF/web.xml

  cross-origin org.eclipse.jetty.servlets.CrossOriginFilter  allowedOrigins *   allowedMethods GET,POST,HEAD   allowedHeaders X-Requested-With,Content-Type,Accept,Origin    cross-origin /*  

此CORS问题的解决方法是在chrome / chromium浏览器中使用扩展。 这是扩展的链接。

https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi?utm_source=chrome-app-launcher-info-dialog

无需在服务器端代码中添加任何标头(这显然可以工作,但可能不是一个好主意)。