当前位置: 首页 > 知识库问答 >
问题:

Spring REST-字符串序列化-bug还是特性?

封永嘉
2023-03-14

我在SpringRest时发现了一个非常奇怪的行为。

具有如下所示的终结点的

@GetMapping("/foo")
public String foo() {
  return "bar";
}

返回值条。听起来是正确的,但这不是一个有效的json,有效的结果应该是“bar”(注意“”)。有人可能会争辩说,spring认为,如果一个方法返回一个字符串,那么您已经手动序列化了该对象,但是如果所有其他对象都是由spring序列化的,那么我希望有一种特殊的方法来告诉它已经序列化了,但是默认的方法应该是序列化值。

也许我在这里遗漏了什么,这就是为什么我没有在Spring问题跟踪喷气机中创建一张票的原因。

共有1个答案

颛孙森
2023-03-14

按照以下答案中的描述取消注册StringhtTPMessageConverter,应该做到以下几点:https://stackoverflow.com/a/37906098/505621

 类似资料:
  • 问题内容: 确定字符串是否为函数结果的最佳方法是什么? https://www.php.net/manual/zh/function.serialize 问题答案: 我会说,尝试一下;-) 引用手册: 如果传递的字符串不是不可序列化的,则返回FALSE并发出E_NOTICE。 所以,你必须检查返回值是或不是 (有或,以确保不会有任何问题或或任何等于,我会说)。 只是当心通知:您可能希望/需要使用@

  • 问题内容: 我有一个带有参数的方法。 在这种方法中,我完全知道在“ o”中存在一个不为空的值。无需检查或执行其他操作。我必须把它当作一个对象来对待。 只是好奇-什么便宜?将其投放或使用?还是按时间/ CPU /内存价格相同? 更新:该方法可以接受,因为它是接口的实现。无法更改参数类型。 而且根本不可能。我只是想说我不需要检查它是否为空或为空。就我而言,总是有一个非空字符串。 问题答案: 强制转换为

  • 我有课 其中field 如果使用ObjectMapper反序列化此对象 结果是这样的: 添加了转义(\),并且json字段有引号(")。如何正确摆脱这一点并制作单个JSON?像这样:

  • 字符串序列化是将对象状态写入字节流的过程。 在python中,“pickle”库用于启用序列化。 该模块包含一个强大的算法,用于序列化和反序列化Python对象结构。 “Pickling”是将Python对象层次结构转换为字节流的过程,“unpickling”是相反的过程。 泡菜模块的演示如下 - import pickle #Here's an example dict grades = { '

  • 问题内容: 我有以下类,它是由Jackson映射的(简化版): 在某些情况下,服务器会返回,然后我想将name设置为空的Java String。 是否有任何Jackson注释,或者如果属性为,我应该只检查getter中的null并返回空字符串? 问题答案: 您可以在默认构造函数中或声明时进行设置: 要么

  • 我有以下由Jackson映射的类(简化版): 在某些情况下,服务器返回,然后我想将name设置为空Java字符串。 是否有任何Jackson注释,或者如果属性为,我应该只检查getter中的null并返回空字符串吗?