gpt4 book ai didi

java - Spring Boot JSON 后 400 错误

转载 作者:太空宇宙 更新时间:2023-11-04 14:07:22 24 4
gpt4 key购买 nike

我在将 JSON 数组发布到 Spring Boot @RequestMapping Rest Controller 时遇到问题。收到 400 错误请求。有什么建议如何纠正吗?

JQuery .ajax 帖子

var sData = ["15957.028", "16356.175", "16937.155", "17564.315", "17942.480", "17760.259", "16572.306", "16746.408", "17339.681", "17946.216"] 

$.ajax({
type: "POST",
url: "/regression",
data: JSON.stringify({"sdata": sData}),
contentType: 'application/json',
headers: { 'X-CSRF-Token': token },
error: function(jqXHR, textStatus, errorThrown) {
console.log(textStatus, errorThrown, jqXHR.error());
},
success: function(){

}
});

@RestController

@RequestMapping(value="/regression", method = RequestMethod.POST)
public HashMap<String, String> results(@RequestBody List<String> series ) {

HashMap<String, String> results = new HashMap<String, String>();

return results;

}

响应错误

responseText: "{"timestamp":1424834682223,"error":"Bad Request","status":400,"message":""}"

最佳答案

您需要将列表包装到另一个类中,如下所示

class SeriesWrapper{
@Getter @Setter private List<String> series;
}

你的 Controller 变成了

@RequestMapping(value="/regression", method = RequestMethod.POST)
public HashMap<String, String> results(@RequestBody SeriesWrapper series ) {

HashMap<String, String> results = new HashMap<String, String>();
return results;

}

和您的 sData

var sData = {series : ["15957.028", "16356.175", "16937.155", "17564.315", "17942.480", "17760.259", "16572.306", "16746.408", "17339.681", "17946.216"]};

关于java - Spring Boot JSON 后 400 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28710841/

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