回送XML主体数据验证错误问题

时间:2019-01-17 08:28:28

标签: xml loopbackjs body-parser

我想通过模型REST api接受并保存XML数据。当我选择“参数内容类型”和“响应内容类型”“应用程序/ xml”或“文本/ xml”时,出现以下验证错误。

   <error>
    <statusCode>422</statusCode>
    <name>ValidationError</name>
    <message>The `testmodel` instance is not valid. 
             Details: `type` can't be blank (value: undefined); 
             `metric` can't be blank (value: undefined); 
             `valid` can't be blank (value: undefined); 
             `registerDate` can't be blank (value: undefined).
    </message>
    .....
   </error>

我的帖子数据是

<testmodel>
    <type>testType</type>
    <metric>testMetric</metric>
    <valid>true</valid>
    <registerDate>Thu Jan 17 2019 10:25:59</registerDate>
</testmodel>

在选择“参数内容类型”和“响应内容类型”作为JSON时有效。

我在config.json文件下将remoting.rest.xml设置为true。对于XML,响应是可以的,但是由于验证错误,不排除发布和放置有效负载。 我还添加了

"parse": {
    "express-xml-bodyparser": {"params": { "limit": "1024kb" }}
},

到middleware.json文件,但没有运气。

谢谢

1 个答案:

答案 0 :(得分:1)

经过一些工作,我最终得到了解决方案。只需将以下代码放在或更改 middleware.json 文件

"parse": {
    "express-xml-bodyparser": {"params": { "explicitArray": false , "explicitRoot":  false}}
},