当前位置: 首页 > 知识库问答 >
问题:

手动执行CORS

董光霁
2023-03-14

我正在调试我的web应用程序,我有一个POST请求。(使用ajax,使用xhrfields:{withcredentials:true})。dataType是'application/json',我的服务器是tomcat,我手动将我的“Access-Control-Allog-Origin”标头设置为“http://localhost:8080”。

跨源请求被阻止:同一源策略不允许读取http://localhost:8080/mysservlet上的远程资源。(原因:CORS标头'Access-Control-Allow-Origin'与'http://localhost:8080'不匹配)。

前面谢谢!

共有1个答案

柴文林
2023-03-14

如果您想要适用于所有请求的配置,请在web.xml中添加以下筛选器:

<filter>
    <filter-name>originfilter</filter-name>
    <filter-class>it.damore.web.ApiOriginFilter</filter-class>
</filter>

<filter-mapping> 
    <filter-name>originfilter</filter-name>
    <url-pattern>/*</url-pattern> 
</filter-mapping> 

这是ApiOriginFilter类:

 public class ApiOriginFilter implements javax.servlet.Filter {
    public void doFilter(ServletRequest request, ServletResponse response,
            FilterChain chain) throws IOException, ServletException {
        HttpServletResponse res = (HttpServletResponse) response;
        res.addHeader("Access-Control-Allow-Origin", "*");
        res.addHeader("Access-Control-Allow-Methods", "GET, POST, DELETE, PUT");
        res.addHeader("Access-Control-Allow-Headers", "Content-Type");
        chain.doFilter(request, response);
    }

    public void destroy() {
    }

    public void init(FilterConfig filterConfig) throws ServletException {
    }
}
 类似资料:
  • 问题内容: 如果我从程序代码中调用一个对象,那么当垃圾回收器处理该对象时, JVM是否 还会再次运行该方法? 这是一个大概的例子: 是否要显式调用以使 JVM 的垃圾回收器不对对象运行该方法? 问题答案: 根据这个简单的测试程序,即使您显式调用了JVM,JVM仍将对finalize()进行调用: 输出为: 开始 定案! 定案! 完成 那里的每个资源都说永远不要显式地调用finalize(),甚至几

  • 在我正在进行的理解DNS的实验中,我试图理解名称服务器如何进行递归查询。我得到了基本的想法-你从一个顶级dns服务器开始,然后它向你发送一个要联系的权威名称服务器列表,然后你联系这些服务器,等等,直到你得到一个权威的响应。 听起来很简单。 但当我在实践中尝试时,我在第一步后就卡住了。我只是使用命令行工具手动执行此操作-(我确保关闭递归) 好的,那么第1步:从根名称服务器开始。我从维基百科的根名称服

  • 问题内容: 如果您曾经参与过Salesforce项目的部署或为SF项目设置持续集成,那么您应该知道,在部署元数据组件(类,页面等)之后,您通常还需要执行一些手动任务,例如填充自定义设置值或设置配置文件的字段级安全性。有很多这样无聊的动作。 在我当前的项目中,我再次面对它,我正在寻找如何最大程度地自动化它的方法。为了将项目部署到Org,我们使用Jenkins + Git。因此,我希望例如在每次部署后

  • 我有一个Kafka侦听器,它实现了具有以下属性的确认消息侦听器接口: 确认模式-手动_立即 IDLEEVENTERVAL-3分钟 在监听器上使用消息时,它决定是否通过acknowledgment.acknowledge()来获取特定记录,并按预期工作。 此外,我还有一个场景,在X分钟后确认最后一个偏移量(将其保留在内存中)(如果没有消息到达)。为了克服这个要求,我决定使用ListenerConta

  • 问题内容: 是否可以在postgresql中手动更改执行计划的操作顺序?例如,如果我一直想在过滤之前进行排序操作(尽管在正常使用Postgresql中没有意义),是否可以通过例如更改操作的内部成本来手动执行该操作? 如果实现自己的功能该怎么办?是否有可能总是在sql语句的最后执行这样的功能? 问题答案: 还有更多的方法- 这里显示了一些方法,但是还有第二种方法,如果要在处理结束时移动函数调用,则只

  • 本文向大家介绍如何手动实现一个 JavaScript 模块执行器,包括了如何手动实现一个 JavaScript 模块执行器的使用技巧和注意事项,需要的朋友参考一下 如果给你下面这样一个代码片段(动态获取的代码字符串),让你在前端动态引入这个模块并执行里面的函数,你会如何处理呢? node 环境的执行 如果在 node 环境,我们可能会很快的想到使用 Module 模块, Module 模块中有一个