美文网首页工作生活
SSM框架配置CORS跨域

SSM框架配置CORS跨域

作者: 给我一个蜜橙啦 | 来源:发表于2019-06-30 21:43 被阅读0次

    什么是跨域?

    跨域是指一个域下的文档或脚本试图去请求另一个域下的资源,这里跨域是广义的。

    常见的跨域场景:

    场景 例子 是否允许通信
    不同域名 htttp://www.jianshu.com
    http://www.baidu.com
    不允许
    同一域名,不同端口 htttp://www.jianshu.com:8080
    htttp://www.jianshu.com:2333
    不允许
    同一域名,不同协议 http://www.jianshu.com
    https://www.jianshu.com
    不允许
    同一域名,不同文件或路径 http://www.jianshu.com/a.js
    http://www.jianshu.com/a/b.js
    允许
    域名和域名对应相同ip http://www.jianshu.com
    http://14.204.147.95
    不允许
    主域相同,子域不同 http://www.jianshu.com
    http://x.jianshu.com
    不允许

    跨域资源共享(CORS)SSM后端解决方案:

    1.将cors-filter-2.4.jar和java-property-utils-1.9.1.jar,两个jar包文件放入项目目录下\web-inf\lib中。

    java-property-utils 提取码:ehkd

    cors-filter 提取码:egve

    2.打开项目目录下\web-inf中的web.xml,在web.xml的在web-app标签下添加如下代码

    <filter>
          <filter-name>CORS</filter-name>
          <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
          <init-param>
            <param-name>cors.allowOrigin</param-name>
              <param-value>*</param-value>
          </init-param>
          <init-param>
            <param-name>cors.supportedMethods</param-name>
              <param-value>GET, POST, HEAD, PUT, DELETE</param-value>
          </init-param>
          <init-param>
            <param-name>cors.supportedHeaders</param-name>
              <param-value>Accept, Origin, X-Requested-With, Content-Type, Last-Modified</param-value>
          </init-param>
          <init-param>
              <param-name>cors.exposedHeaders</param-name>
              <param-value>Set-Cookie</param-value>
          </init-param>
          <init-param>
              <param-name>cors.supportsCredentials</param-name>
              <param-value>true</param-value>
          </init-param>
      </filter>
    
      <filter-mapping>
          <filter-name>CORS</filter-name>
          <url-pattern>/*</url-pattern>
      </filter-mapping>
    

    4.添加完毕后,重启Tomcat

    5.如果存在maven,需要在pom.xml中,添加

    <dependency>
    <groupId>com.thetransactioncompany</groupId>
    <artifactId>cors-filter</artifactId>
    <version>[ version ]</version>
    </dependency>
    

    相关文章

      网友评论

        本文标题:SSM框架配置CORS跨域

        本文链接:https://www.haomeiwen.com/subject/dxkicctx.html