在 Jetty 中设置 Access-Control-Allow-Origin
Set Access-Control-Allow-Origin in Jetty
我需要通过代码将"Access-Control-Allow-Origin"设置为“*”。
正在阅读 this 我尝试使用 setInitParameter
设置 org.eclipse.jetty.servlets.CrossOriginFilter
:
Server server = new Server(activity.WEB_SERVER_PORT);
ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
context.setWelcomeFiles(new String[] { "index.html" });
context.setContextPath("/");
context.setInitParameter("org.eclipse.jetty.servlets.CrossOriginFilter", "/*");
TheServlet sv = new TheServlet();
context.addServlet(new ServletHolder(sv),"/servleturl");
server.setHandler(context);
try {
server.start();
} catch (Exception e) { }
但是没用。我该如何解决?
尝试将 addFilter 方法与 filterHolder 一起使用。此代码段可能会有所帮助
FilterHolder filterHolder = new FilterHolder(CrossOriginFilter.class);
filterHolder.setInitParameter("allowedOrigins", "*");
filterHolder.setInitParameter("allowedMethods", "GET, POST");
ServletContextHandler servletContextHandler;
servletContextHandler = new ServletContextHandler(webServer, "/", ServletContextHandler.SESSIONS);
servletContextHandler.addServlet(atmosphereServletHolder, "/atmosphere/*");
servletContextHandler.addServlet(jerseyServletHolder, "/jersey/*");
servletContextHandler.addFilter(filterHolder, "/*", null);
我需要通过代码将"Access-Control-Allow-Origin"设置为“*”。
正在阅读 this 我尝试使用 setInitParameter
设置 org.eclipse.jetty.servlets.CrossOriginFilter
:
Server server = new Server(activity.WEB_SERVER_PORT);
ServletContextHandler context = new ServletContextHandler(ServletContextHandler.SESSIONS);
context.setWelcomeFiles(new String[] { "index.html" });
context.setContextPath("/");
context.setInitParameter("org.eclipse.jetty.servlets.CrossOriginFilter", "/*");
TheServlet sv = new TheServlet();
context.addServlet(new ServletHolder(sv),"/servleturl");
server.setHandler(context);
try {
server.start();
} catch (Exception e) { }
但是没用。我该如何解决?
尝试将 addFilter 方法与 filterHolder 一起使用。此代码段可能会有所帮助
FilterHolder filterHolder = new FilterHolder(CrossOriginFilter.class);
filterHolder.setInitParameter("allowedOrigins", "*");
filterHolder.setInitParameter("allowedMethods", "GET, POST");
ServletContextHandler servletContextHandler;
servletContextHandler = new ServletContextHandler(webServer, "/", ServletContextHandler.SESSIONS);
servletContextHandler.addServlet(atmosphereServletHolder, "/atmosphere/*");
servletContextHandler.addServlet(jerseyServletHolder, "/jersey/*");
servletContextHandler.addFilter(filterHolder, "/*", null);