AJAX(Asynchronous JavaScript and XML)技术能够实现在浏览器与服务器之间进行异步通讯。在前端开发过程中,经常需要将JSON对象传递给服务器或者从服务器获取JSON数据。下面介绍如何使用AJAX传递JSON对象。
//创建一个对象 var person = { "name": "张三","age": 25,"city": "北京" }; //将对象转换成JSON字符串 var jsonData = JSON.stringify(person); //创建AJAX请求对象 var xhr = new XMLHttpRequest(); xhr.onreadystatechange = function() { if(xhr.readyState === 4 && xhr.status === 200) { console.log(xhr.responseText); } } xhr.open("POST","/user/add",true); xhr.setRequestHeader("Content-Type","application/json;charset=utf-8"); xhr.send(jsonData);
上面的代码中,首先创建了一个对象person,然后将其转换成JSON字符串。接着,创建XMLHttpRequest对象,设置回调函数,打开AJAX请求,设置请求头Content-Type内容为application/json;charset=utf-8,最后使用AJAX发送JSON数据。
在服务器端,如果是Node.js,可以使用body-parser中间件获取JSON数据:
var express = require('express'); var bodyParser = require('body-parser'); var app = express(); //使用body-parser中间件 app.use(bodyParser.json()); app.post('/user/add',function(req,res) { var person = req.body; console.log(person); res.send("success"); }); app.listen(3000,function() { console.log('app is listening at port 3000'); });
注意在服务器端需要使用body-parser中间件来解析JSON数据。在代码中,将收到的JSON数据通过req.body获取,并将其打印在控制台上。如果一切正常,服务器将返回"success",客户端通过回调函数处理服务器返回结果。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。