js跨域资源共享 基础篇


Posted in Javascript onJuly 02, 2016

本文详细介绍了javascript跨域资源共享,供大家参考,具体内容如下

1.为什么提出跨域资源共享(CORS)?
    因为XHR实现ajax的安全限制是:XHR 对象只能访问与包含它的页面位于同一个域中的资源

2.如何实现跨域?(跨浏览器)

// 跨浏览器创建并返回CORS对象
  // param method : 请求的方式, get or post
  // param url : 跨域请求的url
  // return xhr : 返回的跨域资源对象
  function createCORSRequest(method, url){
    var xhr = new XMLHttpRequest(); 
    if ("withCredentials" in xhr){
      xhr.open(method, url, true);  // CORS都是通过异步的请求
    } else if (typeof XDomainRequest != "undefined"){  // IE
      vxhr = new XDomainRequest();
      xhr.open(method, url);
    } else {
      xhr = null;
    }
    return xhr;
  }
  var request = createCORSRequest("get", "http://localhost/aaa/dome2.php");
  if (request){
    // 用于替代onreadystatechange 检测成功,表示接受数据完毕
    request.onload = function(){
      // 对响应的信息进行处理
      alert(request.responseText);  // 取得响应的内容
    };
    // 用于替代onreadystatechange 检测错误。
    request.onerror = function(){
      // 对响应的信息进行处理
    };
    // 用于停止正在进行的请求。
    request.onabort = function(){
      // 对响应的信息进行处理
      alert(request.responseText);
    };
    // 跨域发送请求
    request.send();
  }

以上就是本文的全部内容,希望对大家的学习有所帮助。

Javascript 相关文章推荐
基于jquery的可多选的下拉列表框
Jul 20 Javascript
关于scrollLeft,scrollTop的浏览器兼容性测试
Mar 19 Javascript
node.js WEB开发中图片验证码的实现方法
Jun 03 Javascript
jquery动态改变div宽度和高度
Feb 09 Javascript
javascript图片延迟加载实现方法及思路
Dec 31 Javascript
javascript实现秒表计时器的制作方法
Feb 16 Javascript
浅析为什么a="abc" 不等于 a=new String("abc")
Oct 25 Javascript
Express进阶之log4js实用入门指南
Feb 10 Javascript
angularjs通过过滤器返回超链接的方法
Oct 26 Javascript
利用原生JS实现data方法示例代码
May 28 Javascript
JavaScript 中判断变量是否为数字的示例代码
Oct 22 Javascript
Ajax实现局部刷新的方法实例
Mar 31 Javascript
JavaScript数据存储 Cookie篇
Jul 02 #Javascript
JavaScript实现简单的拖动效果
Jul 02 #Javascript
jQuery插件简单学习实例教程
Jul 01 #Javascript
jquery插件autocomplete用法示例
Jul 01 #Javascript
AngularJS 避繁就简的路由
Jul 01 #Javascript
AngularJS使用指令增强标准表单元素功能
Jul 01 #Javascript
AngularJS实现分页显示数据库信息
Jul 01 #Javascript
You might like
超神学院:天使彦公认最美的三个视角,网友:我的天使快下凡吧!
2020/03/02 国漫
PHP.MVC的模板标签系统(二)
2006/09/05 PHP
数字转英文
2006/12/06 PHP
PHP防CC攻击实现代码
2011/12/29 PHP
php使用sql数据库 获取字段问题介绍
2013/08/12 PHP
通过身份证号得到出生日期和性别的js代码
2009/11/23 Javascript
jquery配合css简单实现返回顶部效果
2013/09/30 Javascript
从数组中随机取x条不重复数据的JS代码
2013/12/24 Javascript
用Node.js通过sitemap.xml批量抓取美女图片
2015/05/28 Javascript
Js数组排序函数sort()介绍
2015/06/08 Javascript
浅谈jquery中delegate()与live()
2015/06/22 Javascript
javascript+css3 实现动态按钮菜单特效
2016/02/06 Javascript
使用Sticky组件实现带sticky效果的tab导航和滚动导航的方法
2016/03/22 Javascript
详解vue 配合vue-resource调用接口获取数据
2017/06/22 Javascript
vue.js移动端tab组件的封装实践实例
2017/06/30 Javascript
详解从Vue-router到html5的pushState
2018/07/21 Javascript
浅谈JavaScript 代码整洁之道
2018/10/23 Javascript
浅析微信扫码登录原理(小结)
2018/10/29 Javascript
深入理解Vue.js轻量高效的前端组件化方案
2018/12/10 Javascript
小程序实现投票进度条
2019/11/20 Javascript
JavaScript实现原型封装轮播图
2020/12/27 Javascript
Python open读写文件实现脚本
2008/09/06 Python
python控制台显示时钟的示例
2014/02/24 Python
Python 2与Python 3版本和编码的对比
2017/02/14 Python
Python基于jieba库进行简单分词及词云功能实现方法
2018/06/16 Python
Python使用selenium + headless chrome获取网页内容的方法示例
2019/10/16 Python
pandas.DataFrame.drop_duplicates 用法介绍
2020/07/06 Python
用CSS3写的模仿iPhone中的返回按钮
2015/04/04 HTML / CSS
css3 column实现卡片瀑布流布局的示例代码
2018/06/22 HTML / CSS
String、StringBuffer、StringBuilder有区别
2015/09/18 面试题
和平主题的演讲稿
2014/01/12 职场文书
三方协议书范本
2014/04/22 职场文书
信用社主任竞聘演讲稿
2014/05/23 职场文书
外联部演讲稿
2014/05/24 职场文书
社区党支部公开承诺书
2015/04/29 职场文书
Python  lambda匿名函数和三元运算符
2022/04/19 Python