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 相关文章推荐
css把超出的部分显示为省略号的方法兼容火狐
Jul 23 Javascript
Extjs 几个方法的讨论
Jan 28 Javascript
JavaScript 构造函数 面相对象学习必备知识
Jun 09 Javascript
一个奇葩的最短的 IE 版本判断JS脚本
May 28 Javascript
浅析jQuery中调用ajax方法时在不同浏览器中遇到的问题
Jun 11 Javascript
深入解读JavaScript中的Hoisting机制
Aug 12 Javascript
解决JS请求服务器gbk文件乱码的问题
Oct 16 Javascript
jQuery Pagination分页插件使用方法详解
Feb 28 Javascript
Angular2学习笔记之数据绑定的示例代码
Jan 03 Javascript
深入浅析Vue.js计算属性和侦听器
May 05 Javascript
vue-router两种模式区别及使用注意事项详解
Aug 01 Javascript
JavaScript中的函数申明、函数表达式、箭头函数
Dec 06 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使用pdo连接sqlite3的配置示例
2016/05/27 PHP
php实现的生成迷宫与迷宫寻址算法完整实例
2017/11/06 PHP
javascript与webservice的通信实现代码
2010/12/25 Javascript
jquery实现table鼠标经过变色代码
2013/09/25 Javascript
做好七件事帮你提升jQuery的性能
2014/02/06 Javascript
BootStrap学习系列之Bootstrap Typeahead 组件实现百度下拉效果(续)
2016/07/07 Javascript
js微信分享API
2020/10/11 Javascript
js实现兼容PC端和移动端滑块拖动选择数字效果
2017/02/16 Javascript
nodejs操作mongodb的增删改查功能实例
2017/11/09 NodeJs
easyui下拉框动态级联加载的示例代码
2017/11/29 Javascript
vue.js 微信支付前端代码分享
2018/02/10 Javascript
使用 vue-i18n 切换中英文效果
2018/05/23 Javascript
在小程序中使用Echart图表的示例代码
2018/08/02 Javascript
vue中tab选项卡的实现思路
2018/11/25 Javascript
微信小程序实现带参数的分享功能(两种方法)
2019/05/17 Javascript
javascript获取select值的方法完整实例
2019/06/20 Javascript
Vue.js递归组件实现组织架构树和选人功能案例分析
2019/07/03 Javascript
关于layui 弹出层一闪而过就消失的解决方法
2019/09/09 Javascript
Echarts地图添加引导线效果(labelLine)
2019/09/30 Javascript
p5.js临摹旋转爱心
2019/10/23 Javascript
详解element-ui 表单校验 Rules 配置 常用黑科技
2020/07/11 Javascript
jquery简易手风琴插件的封装
2020/10/13 jQuery
python实现简单的TCP代理服务器
2014/10/08 Python
Python实现求两个csv文件交集的方法
2017/09/06 Python
Python selenium实现微博自动登录的示例代码
2018/05/16 Python
Django使用详解:ORM 的反向查找(related_name)
2018/05/30 Python
python tornado微信开发入门代码
2018/08/24 Python
Python爬虫将爬取的图片写入world文档的方法
2018/11/07 Python
python 实现倒排索引的方法
2018/12/25 Python
Pytorch to(device)用法
2020/01/08 Python
python3列表删除大量重复元素remove()方法的问题详解
2021/01/04 Python
CSS3实现10种Loading效果
2016/07/11 HTML / CSS
体育系毕业生求职自荐信
2014/04/16 职场文书
乡镇领导班子批评与自我批评材料
2014/09/23 职场文书
党员个人剖析材料
2014/09/30 职场文书
巧用 -webkit-box-reflect 倒影实现各类动效(小结)
2021/04/22 HTML / CSS