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 相关文章推荐
JavaScript中的View-Model使用介绍
Aug 11 Javascript
JS中判断null、undefined与NaN的方法
Mar 26 Javascript
深入学习JavaScript中的Rest参数和参数默认值
Jul 28 Javascript
自定义Angular指令与jQuery实现的Bootstrap风格数据双向绑定的单选与多选下拉框
Dec 12 Javascript
AngularJS中$interval的用法详解
Feb 02 Javascript
微信小程序 Audio API详解及实例代码
Sep 30 Javascript
微信小程序-获得用户输入内容
Feb 13 Javascript
Node.js常用工具之util模块
Mar 09 Javascript
详解微信小程序与内嵌网页交互实现支付功能
Oct 22 Javascript
vue 兄弟组件的信息传递的方法实例详解
Aug 30 Javascript
vue导航栏部分的动态渲染实例
Nov 01 Javascript
ES6中Set和Map用法实例详解
Mar 02 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
1982年日本摄影师镜头下的中国孩子 那无忧无虑的童年
2020/03/12 杂记
Session的工作机制详解和安全性问题(PHP实例讲解)
2014/04/10 PHP
Laravel学习基础之migrate的使用教程
2017/10/11 PHP
PHP获取链表中倒数第K个节点的方法
2018/01/18 PHP
PHP hex2bin()函数用法讲解
2019/02/25 PHP
最近项目写了一些js,水平有待提高
2009/01/31 Javascript
单击某一段文字改写文本颜色
2014/06/06 Javascript
javascript实现C语言经典程序题
2015/11/29 Javascript
移动端jQuery修正Web页面滑动时div问题的两则实例
2016/05/30 Javascript
Angular4 中常用的指令入门总结
2017/06/12 Javascript
js 索引下标之li集合绑定点击事件
2018/01/12 Javascript
p5.js入门教程和基本形状绘制
2018/03/15 Javascript
JavaScript 五大常见函数
2018/03/23 Javascript
vue.js过滤器+ajax实现事件监听及后台php数据交互实例
2018/05/22 Javascript
vue.js使用v-pre与v-html输出HTML操作示例
2018/07/07 Javascript
微信小程序中使用自定义图标(阿里icon)的方法
2018/08/20 Javascript
[01:08:57]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS LGD第二场
2014/05/24 DOTA
python WindowsError的错误代码详解
2017/07/23 Python
python 将数据保存为excel的xls格式(实例讲解)
2018/05/03 Python
cmd运行python文件时对结果进行保存的方法
2018/05/16 Python
python实现弹窗祝福效果
2019/04/07 Python
详解Python是如何实现issubclass的
2019/07/24 Python
elasticsearch python 查询的两种方法
2019/08/04 Python
html5绘制时钟动画
2014/12/15 HTML / CSS
深入解析HTML5中的Blob对象的使用
2015/09/08 HTML / CSS
Static Nested Class 和 Inner Class的不同
2013/11/28 面试题
九州传奇上机题
2014/07/10 面试题
厨师岗位职责
2013/11/12 职场文书
运动会跳远广播稿
2014/02/04 职场文书
班级活动策划书
2014/02/06 职场文书
产品包装策划方案
2014/05/18 职场文书
秋季运动会广播稿(30篇)
2014/09/13 职场文书
2014年质量管理工作总结
2014/12/01 职场文书
2015年乡镇平安建设工作总结
2015/05/13 职场文书
微信小程序实现拍照和相册选取图片
2021/05/09 Javascript
OpenCV-Python使用cv2实现傅里叶变换
2021/06/09 Python