1

当我尝试使用参数引用将 Swagger 2.0 文件导入API 管理器时,我收到以下错误:

无法处理 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"
                    }
                ],
                ...
            }
        }
    }
}

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

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

4

1 回答 1

1

从版本 4000 开始,API 管理当前不支持参数引用,但您不应收到 500 响应 - 您应该收到相应的 400 错误消息。我将联系团队记录产品的缺陷。

于 2015-05-06T21:32:41.720 回答