SpringMvc 3.x跨域+ajax请求

本文介绍如何通过配置Tomcat的web.xml文件使用CorsFilter实现JavaScript跨域访问,并提供了一个具体的例子。此外还讨论了如何正确设置contentType来避免403错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.Cors,实现Js跨域访问Tomcat下资源(步骤如下)

  1. web.xml配置

    <filter>
      <filter-name>CorsFilter</filter-name>
      <filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
    </filter>
    <filter-mapping>
      <filter-name>CorsFilter</filter-name>
      <url-pattern>*.do</url-pattern>
    </filter-mapping>

  2. 请求
    * ajax请求

    $.ajax({
         type : "post",
         url : "",
        data : JSON.stringify(InsertLineInfoArr()),
        datatype : "json",
        contentType : 'application/json',
       success : function(data) {
    });
    问题:
    1) 后台用@requestBody接受
        ajax请求需要带上contentType,还有一个问题就是无论你有没有参数都要带上红色字体,否则会 返回403 请求被驳回。
    2) springmvc用@requestParam
        无所谓了就,就算不跨域也能访问,貌似是浏览器不拦截三种基本类型的。



    二.java实现Filter接口

    1.filter实现(开始设置成Authentitacation不行 改成Contenttype才行)

     

    2.Web.xml配置指向这个filter

    结尾:我也是个小菜鸟,没办法比较low第一种方法最简单,复制完以后只要请求带上contenttype就行,第二中其实也差不多,可能所谓的安全性巨差。

    

 

转载于:https://www.cnblogs.com/json-xk/p/7955125.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值