[英]Unable to send Json data from Ajax to Servlet
我正在尝试使用 Z3EB7106C3477A60E6BBF5 将 JavaScript function 中的 JSON 数据发送到 aServletDBF5DA
客户端:
function addObject() {
var data = {
aa: "aa",
bb: "bb"
}
var string = JSON.stringify(data);
var xhttp = new XMLHttpRequest();
xhttp.open("POST", "GalleryAdd", true);
xhttp.setRequestHeader("Content-Type", "application/json");
xhttp.onreadystatechange = function () {
if (this.readyState == 4 && this.status == 200) {
console.log("Done");
}
};
console.log(string);
xhttp.send(string);
}
来自 stringyfied 数据的 Output 是{"aa":"aa","bb":"bb"}
。
小服务程序:
protected void doPost(HttpServletRequest request, HttpServletResponse response) {
log(request.getParameter("aa"));
log(request.getParameter("bb"));
}
记录器中的 Output 是null
和null
。
看起来 JavaScript 不会将数据发送到 servlet,即使它的字符串化正确。 任何人?
您的 Json object 位于请求正文中,因此您需要解析InputStream
。 尝试这个。
protected void doPost(HttpServletRequest req, HttpServletResponse resp) {
JsonObject object = Json.createReader(req.getInputStream()).readObject();
log(object.getString("aa"));
log(object.getString("bb"));
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.