gpt4 book ai didi

javascript - Spring - 使用普通 javascript 的 POST 参数

转载 作者:行者123 更新时间:2023-12-03 03:46:24 25 4
gpt4 key购买 nike

我正在尝试使用纯 JavaScript 对 Spring Controller 进行 AJAX 调用。调用失败,并显示“所需的字符串参数‘allowedRoles’不存在”

Controller :

@RequestMapping(path = "/updateRoles", method = RequestMethod.POST)
public String updateRoles(@RequestParam("allowedRoles") String allowedRoles,
final Map<String, Object> model) {

return "services";
}

以及 AJAX 调用:

var xhttp;
if (window.XMLHttpRequest) {
// code for modern browsers
xhttp = new XMLHttpRequest();
} else {
// code for IE6, IE5
xhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xhttp.open("POST", "/services/updateRoles", true);
xhttp.setRequestHeader("Content-type", "application/json");
xhttp.send({"allowedRoles":allowedRoles});

我也尝试过

xhttp.send("allowedRoles=" + allowedRoles);

但是结果是一样的

最佳答案

尝试使用 JSON:

//Create JSON data
var jsonData = {allowedRoles: 'string allowed'};
var formattedJsonData = JSON.stringify(jsonData);
//Send it
xhttp.send(formattedJsonData);

如果需要,您可以检查您的数据以确保 jsonData 正确,即:

  console.log(jsonData);
console.log(JSON.parse(formattedJsonData));

关于javascript - Spring - 使用普通 javascript 的 POST 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45369239/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com