xml - Loopback XML 正文数据验证错误问题
问题描述
我想通过模型 REST api 接受和保存 XML 数据。当我选择“参数内容类型”和“响应内容类型”“application/xml”或“text/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,但由于验证错误,post 和 put 有效负载不例外。我还添加了
"parse": {
"express-xml-bodyparser": {"params": { "limit": "1024kb" }}
},
到 middleware.json 文件,但没有运气。
谢谢
解决方案
经过一些工作,我最终找到了解决方案。只需在middleware.json文件中放置或更改以下代码
"parse": {
"express-xml-bodyparser": {"params": { "explicitArray": false , "explicitRoot": false}}
},
推荐阅读
- vue.js - vuejs根据数据条件绑定一个类
- semantic-ui - Semantic-ui-react - 表格单元 Colspan
- java - 注意: JAVA_HOME 应该指向 JDK 而不是 JRE
- ruby-on-rails - RSpec、FactoryBot 和带有 ActiveJob 的模型回调
- mysql - MySQL Workbench 根密码
- zsh - 在参数中间处理替换 =(list)
- javascript - TypeScript - 访问内部对象中的变量
- python - .pyc 文件是否包含类型提示信息?
- laravel - 将 Laravel 部署到 AWS EC2
- bash - 具有特定名称的目录的权限被拒绝