如何使用Ajax发送JSON数据
时间: 2024-03-13 22:47:56 浏览: 66
使用Ajax发送JSON数据可以分为以下几个步骤:
1. 创建一个XMLHttpRequest对象。
```
var xhr = new XMLHttpRequest();
```
2. 设置请求方法和请求地址。
```
xhr.open('POST', '/api/url');
```
3. 设置请求头,告诉服务器请求体中包含JSON数据。
```
xhr.setRequestHeader('Content-Type', 'application/json');
```
4. 监听请求状态变化,处理响应数据。
```
xhr.onreadystatechange = function() {
if(xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {
var response = JSON.parse(xhr.responseText);
// 处理响应数据
}
};
```
5. 将JSON数据序列化为字符串,发送请求。
```
var data = { name: 'John', age: 30 };
xhr.send(JSON.stringify(data));
```
完整的代码示例:
```
var xhr = new XMLHttpRequest();
xhr.open('POST', '/api/url');
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.onreadystatechange = function() {
if(xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {
var response = JSON.parse(xhr.responseText);
// 处理响应数据
}
};
var data = { name: 'John', age: 30 };
xhr.send(JSON.stringify(data));
```
注意,在使用Ajax发送JSON数据时,需要确保后端能够正确解析JSON数据,并且返回正确格式的响应数据。
阅读全文
相关推荐


















