在本文中,我们将介绍 Ajax 的真正含义、异步,以及它如何使用 XMLHTTPRequest 和 ajax 使用的协议(基本上是 HTTP 和 HTTPS)向服务器发出请求。
AJAX:AJAX 代表异步 JavaScript 和 XML。它是关于更新网页而不重新加载整个网页。当只需要更改网页的某些部分时,这非常有用。它可以发送和接收各种格式的信息,包括 JSON、XML、HTML 和文本文件。
Ajax 的特点:
异步意味着在完成第一个请求之前可以继续执行进一步的请求,因此无需等待请求完成并且客户端上的操作不会被阻塞。这意味着,客户端可以处理其他事情而无需等待响应。 JavaScript 中的异步调用示例有 – setTimeout()、setInterval() 等。
AJAX 不是一种编程或脚本语言。它依赖于几种不同技术的相互作用,并且需要对每种技术都有一点了解。
一组相互关联的技术,如 JavaScript、XML、HTML、XHTML、CSS、JavaScript、DOM、XML 和 XMLHTTPRequest。
AJAX 使用不同的协议在浏览器和服务器之间交换数据。 AJAX 使用 XMLHttpRequest 对象与服务器异步通信。
协议:为通信定义的一组规则。
AJAX主要针对两种协议向服务器创建请求:
HTTP
HTTPs
要向服务器发出此请求,该 XMLHTTPRequest 需要一个实例,以具有异步发送这些协议请求的功能
HTTP – HTTP 表示超文本传输??协议。万维网 (www) 使用的协议定义了消息的格式和传输方式。 HTTP 是一种无状态协议。因为服务器不需要在多次请求期间维护每个用户的信息或状态,也不需要与客户端保持持续连接。
HTTP的特点:-
HTTP 是应用层协议,通常使用 TCP
检测到丢包时,Tcp 会尝试重新传输。
Tcp 标头未加密,因此 http 协议未加密
在网络服务器和客户端之间的 Http 通信中
HTTP 用于获取请求并给出响应。
HTTP 是无状态协议
服务器为每个请求打开一个连接,并在发送响应后关闭它。
html中的每一个请求都是完全独立的
在 http 中,编程、本地存储、cookie、会话用于创建增强的用户体验。
HTTP 协议在端口号 80 上运行。
HTTP 标头字段
一般
回复
请求
HTTP 请求处理的步骤——1.客户端请求与服务器的连接2.服务器打开与客户端的连接3.客户端向服务器发出请求4.服务器处理请求5.服务器向客户端发送响应6.客户端关闭连接
HTTPS——HTTPS 代表安全超文本传输??协议,它只是 HTTP 的安全版本。它在 HTTP 协议上使用 TLS(传输安全层)/SSL(安全套接字层)加密。在发送请求之前,SSL 加密发生在传输级别。所以这里所有的请求都和 HTTP 一样。所以请求中的所有内容都是加密的。示例:信用卡数据、社会安全号码等
HTTPS 的特点:
网络服务器和客户端之间的通信
Http 请求/响应。
发送的数据已加密
提高数据传输的安全性。
使用 SSL/TSL
在网络主机上安装证书。
在端口号 443 上运行
某些情况下 XMLHTTPRequest 还支持 ftp 或 ftps 协议。
您可以使用 HTTP/HTTPS/FTP/FTPS 发出的请求类型:
GET:它请求数据。
HEAD:它请求数据但没有响应正文。
POST:它提交导致服务器状态发生变化的数据。
PUT:将指定数据替换为请求数据。
DELETE:删除指定的数据。
CONNECT:建立到服务器的隧道。
OPTIONS:描述目标数据的通信选项。
TRACE:沿着到达目标数据的路径进行消息环回测试。
PATCH:它将部分更改应用于数据。
例子:
Javascript实现
//create new request through constructor
const xhrReq = new XMLHttpRequest();
// Set up listener
xhrReq.onload = () => {
// Get response from the server
let resJSON = JSON.parse(xhrReq.response);
console.log(resJSON);
};
// Open url and get new created request
xhrReq.open("get",
"https://dog.ceo/api/breeds/list/all", true);
// Send request to server
xhrReq.send();
输出: