关于SSM跨域问题,此次前端是Vue

1.同一个猫 我的是tomcat7.x

<init-param>
	<param-name>readonly</param-name>
	<param-value>false</param-value>
</init-param>

在这里插入图片描述

    <!--跨域依赖-->
    <dependency>
      <groupId>com.thetransactioncompany</groupId>
      <artifactId>cors-filter</artifactId>
      <version>2.5</version>
    </dependency>

2.一个是猫,一个不是猫
在这里插入图片描述

 <!--CORS-->
  <filter>
    <filter-name>CORS</filter-name>
    <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
    <init-param>
      <param-name>cors.allowGenericHttpRequests</param-name>
      <param-value>true</param-value>
    </init-param>
    <init-param>
      <param-name>cors.allowOrigin</param-name>
      <param-value>*</param-value>
    </init-param>
    <init-param>
      <param-name>cors.allowSubdomains</param-name>
      <param-value>false</param-value>
    </init-param>
    <init-param>
      <param-name>cors.supportedMethods</param-name>
      <param-value>GET, HEAD, POST,OPTIONS,PUT</param-value>
    </init-param>
    <init-param>
      <param-name>cors.supportedHeaders</param-name>
      <param-value>*</param-value>
    </init-param>
    <init-param>
      <param-name>cors.exposedHeaders</param-name>
      <param-value>X-Test-1, X-Test-2</param-value>
    </init-param>
    <init-param>
      <param-name>cors.supportsCredentials</param-name>
      <param-value>true</param-value>
    </init-param>
    <init-param>
      <param-name>cors.maxAge</param-name>
      <param-value>3600</param-value>
    </init-param>
  </filter>
  <filter-mapping>
  <filter-name>CORS</filter-name>
  <url-pattern>/*</url-pattern>
  </filter-mapping>

3.Chrome浏览器跨域问题(本人的电脑)这个是个别电脑用了webpack出现问题解决方案。不用配置了proxyTable。

Access to XMLHttpRequest at 'http://localhost:8888/factory/FactoryCreate' from origin 'http://localhost:8080' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
xhr.js?ec6c:178 POST http://localhost:8888/factory/FactoryCreate net::ERR_FAILED
dispatchXhrRequest @ xhr.js?ec6c:178
xhrAdapter @ xhr.js?ec6c:12
dispatchRequest @ dispatchRequest.js?c4bb:52
Promise.then (async)
request @ Axios.js?5e65:61
Axios.<computed> @ Axios.js?5e65:86
wrap @ bind.js?24ff:9
submit @ FactoryCreate.vue?678f:88
click @ FactoryCreate.vue?29b3:18
invokeWithErrorHandling @ vue.esm.js?efeb:1863
invoker @ vue.esm.js?efeb:2188
original._wrapper @ vue.esm.js?efeb:7565
createError.js?16d0:16 Uncaught (in promise) Error: Network Error
    at createError (createError.js?16d0:16)
    at XMLHttpRequest.handleError (xhr.js?ec6c:83)

在这里插入图片描述
–user-data-dir=C:\MyChromeDevUserData

放到如下位置
在这里插入图片描述

其它说明:
Windows:
1.关闭所有的chrome浏览器。

2.新建一个chrome快捷方式,右键“属性”,“快捷方式”选项卡里选择“目标”,添加 --args --disable-web-security --user-data-dir=C:\MyChromeDevUserData

3.通过快捷方式打开谷歌浏览器

MAC:

  1. 打开终端

  2. 输入下面的命令( 需要替换路径中的yourname)

open -n /Applications/Google\ Chrome.app/ --args --disable-web-security --user-data-dir=/Users/yourname/MyChromeDevUserData/

注意
网上有些文章–user-data-dir参数后面没有添加文件夹名,是设置不成功的。

保证该路径/Users/yourname/下存在MyChromeDevUserData文件夹,没有文件夹MyChromeDevUserData,可以自己新建一个

Chrome49之前的版本:
Windows:

1.关闭所有的chrome浏览器。

2.新建一个chrome快捷方式,右键“属性”,“快捷方式”选项卡里选择“目标”,添加–args --disable-web-security --user-data-dir

3.通过快捷方式打开谷歌浏览器

注意

相对于新版本不需要新建添加MyChromeDevUserData文件夹

可以增加 --allow-running-insecure-content 解决混合内容问题

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

汤永红

一分也是爱

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值