簡體   English   中英

在碼頭設置訪問控制允許來源

[英]Set Access-Control-Allow-Origin in Jetty

我需要通過代碼將“ Access-Control-Allow-Origin”設置為“ *”。

閱讀本文,我嘗試使用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);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM