gpt4 book ai didi

java - Rest Webservice 传递并接受 List

转载 作者:行者123 更新时间:2023-12-01 11:04:19 26 4
gpt4 key购买 nike

我是休息网络服务的新手。有人可以帮我确定正确的方法吗?

我希望我的 web 服务能够使用 Json 对象(列表 id)并生成 Json 对象。

我想将给定的 json 数据传递给我的服务。

    {
id : "1"
id : "2"
id : "3"
id : "4"
}

我的服务看起来像 -

@RequestMapping(value = "/read/ids", method = RequestMethod.POST)
@ResponseBody
public List<ids> getValues(Collection<String> ids){
// some calculation....
}

此代码对我不起作用。我正在使用 spring 框架来创建我的服务。

对我有用的替代方法是 -

传递简单数据

1,2

然后服务来使用它。

@RequestMapping(value = "/read/ids", method = RequestMethod.POST)
@ResponseBody
public List<String> getValues(@Valid @RequestBody String ids){
List<String> testids = new ArrayList<>();
if(ids.contains(",")){
String[] idArray = ids.split(",");
for(String id : idArray){
testids.add(service.findByid(id));
}
}else{
testids.add(service.findByid(ids));
}

return testids;
}

但我不认为这是正确的方法

注意:我不想创建包含列表的不必要的对象

最佳答案

你像这样传递 JSON。 ArrayList 不接受键和值对。然后添加您的 key

 JSON:
[
"1",
"2",
"3",
"4"
]
@RequestMapping(method = RequestMethod.POST, value = "/read/ids/",headers="Accept=application/json")
public ArrayList<String> test(@RequestBody ArrayList<String> ids) throws Exception {
return ids;
}

关于java - Rest Webservice 传递并接受 List<String>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33094938/

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