java后台设置可跨域访问,前端ajax获取json数据,解决浏览器限制跨域访问的问题

在解决浏览器跨域访问限制时,通过在Java后台创建Filter类并配置web.xml,允许跨域请求。这样,无论前端代码位于何处,都能成功访问后台接口。步骤包括创建Filter,配置web.xml,以及进行Ajax测试。这使得前端可以无视同源策略,从不同位置访问后台服务。

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

 

在本地用ajax跨域访问请求时报错:

XMLHttpRequest cannot loadhttp://xxx/. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access.

 

今天有个同事叫我帮他解决一个bug,上面的红字就是浏览器的报错内容。

原来他的java后台项目和前端html分开了,没有放到一起,后台用myeclipse写的,放在本地电脑的tomcat上,前端html代码文件放在另一个地方,然后通过浏览器打开去访问本地tomcat的项目里的后台接口,然后就报上面的错了。

其实这是浏览器出于安全考虑限制了跨域访问,所以有两个选择,要么把ajax请求(也就是前端js代码)写到项目里就可以访问了,要么把跨域解决掉。要解决跨域访问的话我这里提供一个方法。

 

解决了跨域ajax在任何地方就都可以访问后台接口了,不管是在同一台电脑还是不在同一台电脑都可以访问。

废话不多说,解决方法如下:

第一步:

 

新建一个Filter类:

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值