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 相关文章推荐
JS中使用sort结合localeCompare实现中文排序实例
Jul 23 Javascript
IE中document.createElement的iframe无法设置属性name的解决方法
Sep 14 Javascript
JS组件Bootstrap Table表格多行拖拽效果实现代码
Dec 08 Javascript
浅谈jQuery 选择器和dom操作
Jun 07 Javascript
JavaScript比较当前时间是否在指定时间段内的方法
Aug 02 Javascript
JavaScript实现输入框与清空按钮联动效果
Sep 09 Javascript
jQuery中table数据的值拷贝和拆分
Mar 19 Javascript
bootstrap suggest搜索建议插件使用详解
Mar 25 Javascript
vue通过点击事件读取音频文件的方法
May 30 Javascript
解决Angular2 router.navigate刷新页面的问题
Aug 31 Javascript
JavaScript如何借用构造函数继承
Nov 06 Javascript
原生js实现自定义滚动条组件
Jan 20 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
PHP 高手之路(一)
2006/10/09 PHP
一个PHP数组应该有多大的分析
2009/07/30 PHP
PHP 表单提交及处理表单数据详解及实例
2016/12/27 PHP
7个去伪存真的JavaScript面试题
2016/01/07 Javascript
bootstrap网页框架的使用方法
2016/05/10 Javascript
原生JS实现图片轮播与淡入效果的简单实例
2016/08/21 Javascript
vue.js 获取当前自定义属性值
2017/06/01 Javascript
详解微信小程序 template添加绑定事件
2017/06/23 Javascript
jQuery表单设置值的方法
2017/06/30 jQuery
微信小程序下拉刷新界面的实现
2017/09/28 Javascript
JavaScript箭头函数中的this详解
2019/06/19 Javascript
Vue使用路由钩子拦截器beforeEach和afterEach监听路由
2020/11/16 Javascript
html中创建并调用vue组件的几种方法汇总
2020/11/17 Javascript
vue+vant实现购物车全选和反选功能
2020/11/17 Vue.js
推荐10款最受Python开发者欢迎的Python IDE
2018/09/16 Python
python Pandas库基础分析之时间序列的处理详解
2019/07/13 Python
Python使用Pandas库常见操作详解
2020/01/16 Python
深入浅析python 中的self和cls的区别
2020/06/20 Python
Python制作数据预测集成工具(值得收藏)
2020/08/21 Python
scrapy与selenium结合爬取数据(爬取动态网站)的示例代码
2020/09/28 Python
HTML5 Web 存储详解
2016/09/16 HTML / CSS
JD Sports德国官网:英国领先的运动鞋和运动服饰零售商
2018/02/26 全球购物
Kappa英国官方在线商店:服装和运动器材
2020/11/22 全球购物
会计电算化专业应届大学生求职信
2013/10/22 职场文书
土木工程毕业生推荐信
2013/10/28 职场文书
护理学专业推荐信
2013/12/03 职场文书
事业单位请假制度
2014/01/13 职场文书
30年同学聚会感言
2014/01/30 职场文书
微笑服务标语
2014/06/24 职场文书
英语三分钟演讲稿
2014/08/19 职场文书
国庆促销活动总结
2014/08/29 职场文书
成本会计实训报告
2014/11/05 职场文书
标准离婚协议书范文下载
2014/11/30 职场文书
优秀班主任主要事迹材料
2014/12/16 职场文书
反腐倡廉主题教育活动总结
2015/05/07 职场文书
一个家长教育孩子的心得体会
2016/01/15 职场文书