如何使用 JavaScript 获取 HTTP 请求215
在 Web 开发中,经常需要发送 HTTP 请求以从服务器获取数据或执行其他操作。在 JavaScript 中,可以通过 XMLHttpRequest 对象或 fetch() API 来实现此操作。
XMLHttpRequest 对象
XMLHttpRequest 对象是 JavaScript 中用于发送 HTTP 请求的早期方法。它提供了对整个请求过程的低级控制,包括设置请求头、发送数据以及处理响应。
以下代码示例展示了如何使用 XMLHttpRequest 对象发送 GET 请求:```javascript
const xhr = new XMLHttpRequest();
("GET", "/api/data");
= () => {
if ( === 200) {
const response = ();
(response);
} else {
("Request failed with status", );
}
};
();
```
fetch() API
fetch() API 是一个较新的接口,它简化了 JavaScript 中的 HTTP 请求。fetch() API 返回一个 Promise 对象,该对象在请求完成时解析为 Response 对象。
以下代码示例展示了如何使用 fetch() 发送 GET 请求:```javascript
fetch("/api/data")
.then((response) => {
if () {
return ();
}
})
.then((data) => {
(data);
})
.catch((error) => {
("Request failed", error);
});
```
发送请求参数
HTTP 请求可以通过请求参数来发送数据。在 XMLHttpRequest 对象中,可以使用 setRequestHeader() 方法来设置请求头,并使用 send() 方法发送请求正文。
以下代码示例展示了如何使用 XMLHttpRequest 对象发送 POST 请求并传递 JSON 数据:```javascript
const xhr = new XMLHttpRequest();
("POST", "/api/data");
("Content-Type", "application/json");
(({ name: "John Doe" }));
```
在 fetch() API 中,可以使用 body 属性来设置请求正文。
以下代码示例展示了如何使用 fetch() 发送 POST 请求并传递 JSON 数据:```javascript
fetch("/api/data", {
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: ({ name: "John Doe" }),
})
.then((response) => {
if () {
return ();
}
})
.then((data) => {
(data);
})
.catch((error) => {
("Request failed", error);
});
```
处理响应
HTTP 请求的响应通过 Response 对象提供。Response 对象提供了对响应正文、状态代码和标头的访问。
以下代码示例展示了如何使用 XMLHttpRequest 对象处理响应正文:```javascript
= () => {
if ( === 200) {
const responseText = ;
// 处理 responseText
}
};
```
在 fetch() API 中,可以使用 .json() 方法将响应正文解析为 JSON 对象,或者使用 .text() 方法获取原始响应正文。
以下代码示例展示了如何使用 fetch() 处理响应正文:```javascript
fetch("/api/data")
.then((response) => {
if () {
return ();
}
})
.then((data) => {
(data);
})
.catch((error) => {
("Request failed", error);
});
```
在 JavaScript 中,XMLHttpRequest 对象和 fetch() API 提供了发送 HTTP 请求并处理响应的机制。XMLHttpRequest 对象提供了对请求过程的更精细控制,而 fetch() API 以更简洁和现代的方式实现了相同的功能。
2025-02-10
Python 编程模型:揭开 Python 内部的秘密
https://jb123.cn/python/35823.html
如何撰写引人入胜的编程视频脚本
https://jb123.cn/jiaobenbiancheng/35822.html
JavaScript 在线压缩:精简代码,提升性能
https://jb123.cn/javascript/35821.html
Perl中的“wc”命令
https://jb123.cn/perl/35820.html
Python 中的数学编程
https://jb123.cn/python/35819.html
热门文章
JavaScript (JS) 中的 JSF (JavaServer Faces)
https://jb123.cn/javascript/25790.html
JavaScript 枚举:全面指南
https://jb123.cn/javascript/24141.html
JavaScript 逻辑与:学习布尔表达式的基础
https://jb123.cn/javascript/20993.html
JavaScript 中保留小数的技巧
https://jb123.cn/javascript/18603.html
JavaScript 调试神器:步步掌握开发调试技巧
https://jb123.cn/javascript/4718.html