//原生Ajax的四步
function Ajx() {
var yl
// 1.创建XMLHTTpRequest对象
//创建不同版本的Request对象
if (window.XMLHttpRequest) {
// IE7+, Firefox,chrome,Opera,Safari 浏览器代码
yl = new XMLHttpRequest()
} else {
//IE6,IE5 浏览器代码
yl = new ActiveXObject('Microsoft,XMLHTTP')
}
// 2.设置onreadystatechange的回调函数
if (yl.readyState == 4 && yl.status == 200) {
document.getElementById("xml").innerHTML = yl.responseText;
}
// 3.open()打开链接
yl.open('GET', 'pretty.html', false)
//4.发送请求
yl.send()
console.log(yl);
}
//HTTP状态码
// 100 - 199 提示信息– 表示请求正在处理
// 200 - 299 成功– 表示请求正常处理完毕
// 300 - 399 重定向– 要完成请求必须进行更进一步的处理
// 400 - 499 客户端错误– 请求有语法错误或请求无法实现
// 500 - 599 服务器端错误– 服务器处理请求出错
// **
// 常见的状态码有哪些? **
// 200: 请求成功, 浏览器会把响应体内容( 通常是html) 显示在浏览器中;
// 404:(客户端问题) 请求的资源没有找到
// 400: 语义有误, 当前请求无法被服务器理解。
// 401: 当前请求需要用户验证
// 403: 服务器已经理解请求, 但是拒绝执行它。
// 500:(服务端问题) 请求资源找到了, 但服务器内部发生了不可预期的错误;
// 301 / 302 / 303:(网站搬家了, 跳转) 重定向
//同源和跨域
//什么是同源策略
// 同源策略是由NetScape提出的一个著名的安全策略, 它是浏览器最核心也最基本的安全功能
// 所谓的同源, 指的是协议, 域名, 端口相同。 浏览器处于安全方面的考虑, 只允许本域名下的接口交互, 不同源的客户端脚本, 在没有明确授权的情况下, 不能读写对方的资源
//什么是跨域
//跨域,是指浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对JavaScript实施的安全限制
//跨域解决方案
// Jsonp, CORS, 代理,反向代理,哈希处理跨域,a链接处理跨域