jsp允许跨域访问_如何解决js跨域问题

本文探讨了JavaScript跨域问题,包括通过Ajax请求和页面中嵌入iframe时遇到的限制。提供了三种解决方案:1) 服务端使用Proxy,2) JSONP技术,3) 利用IFrame进行数据交互。并详细解释了JSONP的工作原理以及如何使用IFrame解决跨域通信问题。
摘要由CSDN通过智能技术生成

在A.com域下有一个页面,http://A.com/test.jsp,页面代码为:

$(function() {

var ajax_url = "http://B.com/info.jsp";

// var ajax_url = "http://A.com/info.jsp";

$.get(ajax_url, function(data) {

alert(data);

});

});

如果以上页面通过ajax异步请求B.com下的info.jsp,就会产生跨域问题,而如果请求本域下的info.jsp,就会正常alert返回的信息。

2、页面中嵌入iframe

在A.com域下有一个页面,http://A.com/test.jsp,页面代码为:

我们看到child.jsp页面是在域B.com下的,

$(function() {

$(window.parent.document).find("#div_info").html("Hello");

});

如上,在child.jsp中控制A.com域下test.jsp的页面元素div_info,即产生跨域问题,页面test.jsp中将不会显示字符串"Hello",但如果child.jsp也是在域A.com下,在test.jsp页面上就能看到"Hello"。

请注意,有一种情况经常会让大家误以为存在跨域问题,实则不然,如下:

在A.co

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值