如何设置本地tomcat(localhost)实现跨域调用接口

怎么实现在本地tomcat(localhost:8080)的情况下依然可以跨域访问获取数据?

准备工具,我们需要两个包:

java-property-utils-1.9.1.jar 和 cors-filter-2.5.jar

对于一些新人来说,可能找包会比较麻烦,那么,我在这里贴上百度云的地址,大家可以试着在百度云上下载(之前图方便,找了一些网上其他人给的链接,结果都是要钱的o(╥﹏╥)o,无奈自己建个项目,跑个maven,O(∩_∩)O哈哈~)

链接: https://pan.baidu.com/s/1JY0BZdjYO_4LWEyN8kj9uA 提取码: ss5q

服务器的相关修改

在tomcat的(tomcat安装路径下conf文件下就有相关的配置文件)Web.xml中加上如下配置(建议用一些编辑器打开,比如:notepad):
在这里插入图片描述

<!--  提供跨域支持 -->
    <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>

效果如下图所示:
在这里插入图片描述
注意!!!
好了,之前我也是这样做就完事了,但是发现一个怪异的问题,设置完没有效果啊?!
后面记过查找,给出的一个解决方案是,浏览器是有是否支持跨域访问的功能的(我喜欢用chrome进行开发,所以就已Chrome为例操作了,其他浏览器的问题有兴趣可以自己查找一番)
如果一定要使用chrome跨域访问的话,需要在chrome快捷方式后面加一段代码 ,如图所示

–args --disable-web-security --user-data-dir

在这里插入图片描述
完整的写法是

C:\Users\Administrator\AppData\Local\Google\Chrome\Application\chrome.exe --args --disable-web-security --user-data-dir

最后,欢迎各位评论,共同精进,纯粹为了学习,不然我也学其他地方把工具什么的都设置收费了

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值