我是靠谱客的博主 开放烧鹅,最近开发中收集的这篇文章主要介绍如何设置本地tomcat(localhost)实现跨域调用接口怎么实现在本地tomcat(localhost:8080)的情况下依然可以跨域访问获取数据?,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

怎么实现在本地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:UsersAdministratorAppDataLocalGoogleChromeApplicationchrome.exe --args --disable-web-security --user-data-dir

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

最后

以上就是开放烧鹅为你收集整理的如何设置本地tomcat(localhost)实现跨域调用接口怎么实现在本地tomcat(localhost:8080)的情况下依然可以跨域访问获取数据?的全部内容,希望文章能够帮你解决如何设置本地tomcat(localhost)实现跨域调用接口怎么实现在本地tomcat(localhost:8080)的情况下依然可以跨域访问获取数据?所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(87)

评论列表共有 0 条评论

立即
投稿
返回
顶部