gpt4 book ai didi

java - 返回带有帮助 JSON 的字符串(Java 和 Spring)

转载 作者:行者123 更新时间:2023-12-01 19:33:48 25 4
gpt4 key购买 nike

我编写的代码应该以相反的顺序返回字符串,但我只设法返回数组,这是错误的

 @PostMapping("/reverse")
public List<String> reverseList(@RequestBody String string) {
List<String> stringList = Arrays.asList(string.split("[+,]"));
return IntStream.range(0, stringList.size())
.mapToObj(i -> stringList.get(stringList.size() - 1 - i))
.collect(Collectors.toList());
}

сURL命令

curl -H "Content-Type: application/json" -d "a1+a2+a3+a4" localhost:8080/hello/reverse

输出

["a4","a3","a2","a1"]

但是这是错误的

需要这样返回

curl -H "Content-Type: application/json" -d "a1+a2+a3+a4" localhost:8080/hello/reverse

不带数组和逗号的输出

a4+a3+a2+a1

最佳答案

默认情况下,Spring 将使用 Jackson 将从端点(至少在 RestController 的情况下)返回的对象序列化为 JSON。要解决这个问题,只需从端点返回一个 String 并使用 Collectors.joining("+") 而不是 Collectors.toList :

@PostMapping("/reverse")
public String reverseList(@RequestBody String string) {
List<String> stringList = Arrays.asList(string.split("[+,]"));
return IntStream.range(0, stringList.size())
.mapToObj(i -> stringList.get(stringList.size() - 1 - i))
.collect(Collectors.joining("+"));
}

关于java - 返回带有帮助 JSON 的字符串(Java 和 Spring),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58553164/

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