关于Ajax

1.Ajax

异步 JavaScript 和 XML

Ajax 本身不是一种技术,而是一种将一些现有技术结合起来使用的方法,包括:HTMLXHTMLCSSJavaScriptDOMXMLXSLT、以及最重要的 XMLHttpRequest 对象。当使用结合了这些技术的 Ajax 模型以后,网页应用能够快速地将增量更新呈现在用户界面上,而不需要重载(刷新)整个页面。这使得程序能够更快地回应用户的操作。Ajax 最吸引人的特性是它的"异步"性质,这意味着它可以与服务器通信、交换数据并更新页面,而无需刷新页面。

尽管 Ajax 中的 X 代表 XML,但是 JSON 才是首选,因为它更加轻量,而且是用 JavaScript 编写的。在 Ajax 模型中,JSON 和 XML 都被用来包装信息。

2.步骤

1.创建对象

java 复制代码
//建立ajax异步对象
let xhr = new XMLHttpRequest()

2处理服务器响应

java 复制代码
httpRequest.onreadystatechange = () => {
  // 在这里处理服务器响应。
};

3发送请求

java 复制代码
httpRequest.open("GET", "http://www.example.org/some.file", true);
httpRequest.send();

3.onreadystatechange 事件

当请求被发送到服务器时,我们需要执行一些基于响应的任务。每当 readyState 改变时,就会触发 onreadystatechange 事件。AJAX -- onreadystatechange 事件 | 菜鸟教程

4.示例

java 复制代码
//建立ajax异步对象
let xhr = new XMLHttpRequest()
//给对象添加事件
xhr.onreadystatechange = function () {
    //ajax 对象状态码 0 1 2 3 4
    if (xhr.readyState === 4 && xhr.status === 200) {
        //获取接口的响应字符串
        //console.log(xhr.responseText)

        let obj = JSON.parse(xhr.responseText)
        //console.log(obj['java.version'])
        let doc = document.body
        for (let p in obj) {
            //console.log(obj[p])
            doc.innerHTML += `<p>${p} = ${obj[p]}</p>`
        }
    }
}

//本服务器下的 get文件输出的内容
//打开ajax对象,请求方式为GET 请求路径 本服务器路径,同域 https://localhost:3333/
//xhr.open('GET', './get', true)

//xhr.open('GET', 'http://192.168.13.249:8088/', true)

// xhr.open('GET', 'http://localhost:8088/', true)
xhr.open('POST', 'http://localhost:8088/post', true)

//发送请求
xhr.send()
相关推荐
東雪蓮☆32 分钟前
从零开始掌握 Web 与 Nginx:入门详解
运维·服务器·前端·nginx
脑子慢且灵33 分钟前
【JavaWeb】一个简单的Web浏览服务程序
java·前端·后端·servlet·tomcat·web·javaee
柯南二号38 分钟前
【大前端】 断点续传 + 分片上传(大文件上传优化) 的前端示例
前端
前端小超超44 分钟前
如何配置capacitor 打包的安卓app固定竖屏展示?
android·前端·gitee
xiaopengbc1 小时前
在Webpack中,如何在不同环境中使用不同的API地址?
前端·webpack·node.js
前端AK君1 小时前
React中台系统如何嵌入到业务系统中
前端
Slice_cy1 小时前
不定高虚拟列表
前端
前端AK君1 小时前
React组件库如何在vue项目中使用
前端
Moonbit1 小时前
MoonBit 再次走进清华:张宏波受邀参加「思源计划」与「程序设计训练课」
前端·后端·编程语言
RestCloud1 小时前
一站式数据集成:iPaaS 如何让开发者和业务人员都满意?
前端·后端·架构