1、编写过滤器类:需要实现Filter接口,并重写三个方法:

(1)先设置字符编码:

request.setCharacterEncoding("utf-8");

response.setContentType("text/html;charset=utf-8");

(2)重写init、destroy、doFilter方法

public class TestFilter2 implements Filter {

    public void destroy() {
} public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws ServletException, IOException {

      HttpServletResponse responseH = (HttpServletResponse) resp;
      // responseH.setHeader("Access-Control-Allow-Origin", "*");
      responseH.setHeader("Access-Control-Allow-Origin", "http://localhost:8090");
      responseH.setHeader("Access-Control-Allow-Credentials", "true");
      responseH.setHeader("Access-Control-Allow-Methods", "*");
      responseH.setHeader("Access-Control-Allow-Headers", "Content-Type,Access-Token");
      responseH.setHeader("Access-Control-Expose-Headers", "*");

        chain.doFilter(req, resp);   //本行代码表示,如果还有其他的过滤器,就调用其他的过滤器,这一行代码必须写在DoFilter方法的最后面
} public void init(FilterConfig config) throws ServletException { }
}
//给过滤器添加注解配置@WebFilter(filterName = "本类名",urlPatterns = "/*"),则不需要再去web.xml中注册了
//若不添加注解配置,则需要在web.xml中注册,才能使用:

<filter>
<filter-name>LocalFilter(过滤器名)</filter-name>
<filter-class>com.kuangchi.Green_Transport.filter.LocalFilter(过滤器类名)</filter-class>
</filter>
<filter-mapping>
<filter-name>LocalFilter</filter-name>
<url-pattern>/*</url-pattern>   <!--过滤的路径,*代表访问所有路径的时候都会先访问这个过滤器-->
</filter-mapping>

//以上此种过滤器中设置请求头属性并设置web.xml中过滤器的设置方法,适用于SpringMVC 4.2以下版本,如果是SpringMVC  4.2及以上版本,用下面的添加方法在MVC相关的配置类里就可以了

@configuration

public class WebConfig extends webMvcConfigurerAdapter{

  @override

  public void addCorsMapping (CorsRegistry registry){

    registry.addMapping("/**/*").allowedOrigins("*");

  }

}



跨域请求问题:CORS的更多相关文章

  1. 【fetch跨域请求】cors

    当使用fetch 发起跨域请求时,CORS(跨域资源共享Cross-origin resource sharing) 请求fetch const body = {name:"Good boy ...

  2. ASP.NET Core-Docs:在 ASP.NET Core 中启用跨域请求(CORS)

    ylbtech-ASP.NET Core-Docs:在 ASP.NET Core 中启用跨域请求(CORS) 1.返回顶部   2.返回顶部   3.返回顶部   4.返回顶部   5.返回顶部 1. ...

  3. ajax跨域请求解决方案 CORS和JSONP

    什么是跨域: 只要协议.域名.端口有任何一个不同,都会被当成不同的域.而由于浏览器的同源策略(同源策略:域名.协议.端口均相同),浏览器之间要隔离不同域的内容,禁止互相操作,不能执行其他网站的js.所 ...

  4. 在 ASP.NET Core 中启用跨域请求(CORS)

    本文介绍如何在 ASP.NET Core 的应用程序中启用 CORS. 浏览器安全可以防止网页向其他域发送请求,而不是为网页提供服务. 此限制称为相同源策略. 同一源策略可防止恶意站点读取另一个站点中 ...

  5. ssm框架如果想要跨域请求,cors跨域

    <!-- 跨域 --> <mvc:cors> <mvc:mapping path="/**"/> </mvc:cors> 在spri ...

  6. JS实现跨域请求数据--CORS

    https://www.cnblogs.com/cjw-ryh/p/7674038.html?utm_source=debugrun&utm_medium=referral

  7. Django跨域请求之JSONP和CORS

    现在来新建一个Django项目server01,url配置为 url(r'^getData.html$',views.get_data) 其对应的视图函数为get_data: from django. ...

  8. .Net Core 3.0 Api json web token 中间件签权验证和 Cors 中间件处理跨域请求

    第一步:在Nuget上安装"Microsoft.AspNet.WebApi.Cors"包,并对api controller使用[EnableCors]特性以及Microsoft.A ...

  9. CORS跨域请求规则以及在Spring中的实现

    CORS: 通常情况下浏览器禁止AJAX从外部获取资源,因此就衍生了CORS这一标准体系,来实现跨域请求. CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origi ...

  10. Flask框架踩坑之ajax跨域请求

    业务场景: 前后端分离需要对接数据接口. 接口测试是在postman做的,今天才开始和前端对接,由于这是我第一次做后端接口开发(第一次嘛,问题比较多)所以在此记录分享我的踩坑之旅,以便能更好的理解,应 ...

随机推荐

  1. Git push时不需要总输入密码

    遇到问题: 最近因为换了自己的邮箱密码后,每次push的时候都需要填写密码,账号.很烦 解决方法: [戎马半生的答案] (http://www.cnblogs.com/zhaoyu1995/p/650 ...

  2. .NET CORE(C#) WPF 值得推荐的动画菜单设计

    微信公众号:Dotnet9,网站:Dotnet9,问题或建议:请网站留言, 如果对您有所帮助:欢迎赞赏. .NET CORE(C#) WPF 值得推荐的动画菜单设计 阅读导航 本文背景 代码实现 本文 ...

  3. 初识Idea,部署Maven项目常见问题解决方案

    一.idea 中项目右键没有run命令选项,没有maven的clean与install选项 解决方案:安装Maven Helper插件 二.Idea不识别java文件(类文件显示橙色) 解决方案: 第 ...

  4. js增删class的方法

    接下来我来介绍两种方法 我们先来一段HTMl代码 <div id="bb"> 你好呀 </div> 接下来我们再来一段css样式 .ob { color:r ...

  5. 根据ip列表模拟输出redis cluster的主从对应关系

    需求:给点一批ip列表,一个数组或者一个文件,每行一个ip,模拟输出redis cluster的组从关系,前者是master_ip:master_port -> slave_ip:slave_p ...

  6. 纪中21日T3 2118. 【2016-12-30普及组模拟】最大公约数

    纪中21日T3 2118. 最大公约数 (File IO): input:gcd.in output:gcd.out 时间限制: 1000 ms  空间限制: 262144 KB  具体限制 Goto ...

  7. 关于 DP 的一些内容

    0.关于         动态规划是编程解题的一种重要手段.1951 年美国数学家 R.Bellman 等人,根据一类多阶段问题的特点,把多阶段决策问题变换为一系列互相联系的单阶段问题,然后逐个加以解 ...

  8. python如何安装Jupyter notebook

    一,安装Jupyter notebook 环境:win10,python3.7 两种安装方式,这里只讲pip安装 pip install jupyter notebook 二,启动Jupyter no ...

  9. PHP版常用算法

    PHP版常用算法最近准备面试的资料,顺便整理一下以前的基本算法,写个DEMO记录一下 //冒泡//逐行对比,满足条件则交换function bubbleSort($arrData,$sort = 'd ...

  10. JSP页面取不到ModelAndView里面存的值

    方法1:在jsp页面上加上<%@ page isELIgnored="false" %>