首页 > 语言 > JavaScript > 正文

javascript跨域的方法汇总

2024-05-06 16:24:48
字体:
来源:转载
供稿:网友
JavaScript出于安全方面的考虑,不允许跨域调用其他页面的对象。但在安全限制的同时也给注入iframe或是ajax应用上带来了不少麻烦。这里把涉及到跨域的一些问题简单地整理一下
 

此文章学习借鉴了一些其他前端同学的文章,自己做了个实践总结

以下的例子包含的文件均为为 http://www.a.com/a.html 、http://www.a.com/c.html 与 http://www.b.com/b.html,要做的都是从a.html获取b.html里的数据

1.JSONP

jsonp是利用script标签没有跨域限制的特性,通过在src的url的参数上附加回调函数名字,然后服务器接收回调函数名字并返回一个包含数据的回调函数
 

  1. function doSomething(data) { 
  2.   // 对data处理 
  3. var script = document.createElement("script"); 
  4. script.src = "http://www.b.com/b.html?callback=doSomething"
  5. document.body.appendChild(script); 
  6.  
  7. // 1.生成一个script标签,将其append在body上,向服务器发出请求 
  8. // 2.服务器根据 callback 这个参数生成一个包含数据的函数 doSomething({"a", "1"}) 
  9. // 3.页面事先已声明doSomething函数,此时执行 doSomething(data) 这个函数,获得数据 
?
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表