ServiceStack 5.1.0不会反序列化对象字段

时间:2018-08-27 08:05:27

标签: servicestack

我们有Web客户端(Javascript)发送DTO,其中包含类型为object的字段,并且内部包含一些字符串。服务器处理字符串(出于某些原因,将字段定义为“对象”而不是“字符串”,让我们按照此讨论中的说明进行操作。)

这在ServiceStack 4.0.52上运行良好,但停止了在ServiceStack 5.1.0(.NET标准)下运行。该字段以null形式到达服务端,并且字符串无法处理。

为什么会发生这种情况?如果是错误或打算更改破坏兼容性?如果是后一种情况,是否可以选择返回旧的行为?

1 个答案:

答案 0 :(得分:0)

应避免使用未知的object类型,除了其他语言和序列化程序不支持的互操作性问题外,还应遵守security restrictions

在v5.1.0中,使用新的accept arbitrary JS objects实现将其更改为JS Utils,比以前的实现更强大,更正确。

但是可以使用以下方法恢复以前的实现:

SetConfig(new HostConfig { UseJsObject = false });