AJAX与跨域

AJAX

AJAX是异步 js and xml的缩写,可以无刷新读取数据,或则动态加载网页内容

原生Ajax如何写:

1.创建对象

var xhr
if(window.XMLHttpRequest){
xhr=new XMLHttpRequest();
}else{
xhr=new ActiveXObjct("Mircrosoft.XMLHTTP");
}

2.打开连接

xhr.open("get","/users/login",true);//true代表异步

3.发送请求

xhr.send();

4.通过事件回调来处理服务器返回的数据

xhr.onreadystatechange=function(){
if(xhr.readystate==4&&xhr.status==200){//4代表请求已完成,响应已就绪;状态码200代表正确返回
var text=xhr.responseText;
}
}

跨域

跨域:浏览器同时向多个服务器发送请求或者同时向一个服务器多个端口发送请求,称为跨域。

ajax是不允许跨域访问

可以让ajax跨域的几种方法:

1.设置响应头

res.setHeader("Access-Control-Aollow-Orgin","*");
res.setHeader("Access-Control-Aollow-Methods","GET,POST");

2.设置代理

3.JSONP 通过Script标签跨域访问,带js方法一起返回(类似于ajax,不是正真ajax 只能用于get提交)

原文地址:https://www.cnblogs.com/rwalker/p/5576244.html