Ajax-XMLHttpRequest
题目
- 手动编写一个ajax,不依赖第三方库
- 跨域的几种实现方式
知识点
- XMLHttpRequest
- 状态码说明
- 跨域

以上是ajax的实现原理
IE低版本使用ActiveXObject , 和W3C标准不一样
readyState
- 0--(未初始化) 还没有调用send()方法
- 1--(载入)已调用send()方法,正在发送请求
- 2--(载入完成)send()方法执行完成,已经接收到全部响应内容
- 3--(交互)正在解析响应内容
- 4--(完成)响应内容解析完成,可以做客户端调用了
status
- 2xx -- 表示成功处理请求。如200
- 3xx -- 需要重定向,浏览器直接跳转
- 4xx -- 客户端请求错误,如404
- 5xx -- 服务器端错误,如504
什么是跨域
- 浏览器有同源策略,不允许ajax访问其他域接口
- 跨域条件:协议、域名、端口,有一个不同就算跨域
- 可以跨域的三个标签 <img src="xxx"> <link href="xxx"> <script src="xxx">
- <img>用于打点统计,统计网站可能是其他域
- <link><script>可以使用CDN
- <script>可以用于JSONP
- 所有的跨域请求都必须经过信息提供方允许
- 如果未经允许即可获取,那是浏览器同源策略出现漏洞
JSONP(前端)



服务器端设置 http header
浙公网安备 33010602011771号