无法使用参数引用将Swagger 2.0导入API Manager

时间:2015-05-05 13:29:47

标签: import integration swagger ibm-cloud swagger-2.0

当我尝试使用参数引用将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"
                    }
                ],
                ...
            }
        }
    }
}

为什么会失败?这是不受支持的还是错误,还是我错过了什么?

有没有办法让我看到服务器日志以获取有关失败的更多详细信息,如错误消息中所述?

1 个答案:

答案 0 :(得分:1)

从版本4000开始,API Management目前不支持参数引用,但您不应该获得500响应 - 您应该获得适当的400错误消息。我会联系团队记录产品的缺陷。