欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

前端基础之Ajax

程序员文章站 2024-01-25 16:00:04
...

Ajax

XMLHttpRequest

状态码说明

前端基础之Ajax
前端基础之Ajax

跨域

什么是跨域

  • 浏览器有同源策略,不允许ajax访问其他域接口
  • 跨域条件:协议、域名、端口,有一个不同就算跨域
  • 跨域跨域的三个标签: <img>、<link>、<script>

JSONP

<script>
window.callback = function (data) {
    //这是我们跨域得到的信息
    console.log(data)
}
</script>
<script src="http://coding.m.imooc.com/api.js"></script>
//以上将返回 callback({x:100, y:200})

服务端设置 http header

例题

  • 手动编写一个ajax,不依赖第三方库

    var xhr = new XMLHttpRequest()
    xhr.open("GET", "/api", false) //false表示使用异步
    xhr.onreadystatechange = function () {
        if (xhr.readyState == 4) {
            if (xhr.status == 200) {
                alert(xhr.responseText)
            }
        }
    }
    xhr.send(null)
  • 跨域的几种实现方式