我遇到问题在https://anypoint.mulesoft.com/apiplatform的Anypoint平台的Api经理工作..
我制作了一个API Raml定义,并使用Mock服务测试所有端点。因此,当调用Api端点时,会提供模拟baseurl,并且响应由提供有被叫端点/ http动词的示例组成。这适用于GET,但在进行“尝试”时可以使用。对于POST我得到了
status 400 error
{
"error": "body: person: required"
}
作为回应。无论我如何提供身体参数。我的端点POST定义是:
post:
body:
application/json:
properties:
person:
required: true
type: object
token:
required: true
type: string
example: |
{
person: {
"firstName": "John",
"infix": "",
"id": "605a0302-cc33-449a-ac50-5ef26e3e3330",
"emailaddress": "john@doe.nl",
"lastName": "Doe"
},
token: '42E2BC51-6C62-6D46-AC1457446EC4C737'
}
在Api工作台'模拟服务窗格我在正文中输入:
{
person: {
"firstName": "John",
"infix": "",
"id": "605a0302-cc33-449a-ac50-5ef26e3e3330",
"emailaddress": "john@doe.nl",
"lastName": "Doe"
},
token: '42E2BC51-6C62-6D46-AC1457446EC4C737'
}
但我仍然得到"错误":"身体:人:必需"如果我省略令牌.... 我在做什么错了???
答案 0 :(得分:1)
好的,在细节中证明了魔鬼。输入错误形成json - 应该用""并且没有单一的令牌值...... :(
答案 1 :(得分:0)
raml中定义的json格式不合适,可以将raml exmple更改为有效的json格式并进行测试。它会正常工作