当我尝试使用参数引用将Swagger 2.0文件导入API Manager时,出现以下错误:
无法处理API请求。看到 服务器日志以获取更多信息, 或者联系您的管理员。
Swagger定义如下:
{
...
"parameters": {
"p": {
"name": "p",
"in": "path",
"description": "Parameter",
"required": true,
"type": "string",
"default": "x"
}
},
"paths": {
"/stuff": {
"get": {
"parameters": [
{
"$ref": "#/parameters/p"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/result"
}
}
}
}
}
}
}
但是,当我直接指定参数时,导入成功:
{
...
"paths": {
"/stuff": {
"get": {
"parameters": [
{
"name": "p",
"in": "path",
"description": "Parameter",
"required": true,
"type": "string",
"default": "x"
}
],
...
}
}
}
}
为什么会失败?这是不受支持的还是错误,还是我错过了什么?
有没有办法让我看到服务器日志以获取有关失败的更多详细信息,如错误消息中所述?
答案 0 :(得分:1)
从版本4000开始,API Management目前不支持参数引用,但您不应该获得500响应 - 您应该获得适当的400错误消息。我会联系团队记录产品的缺陷。