0

node-restify库允许类似/foo/:id. 大摇大摆可以处理这样的路径吗?即类似的东西?

var getFoo = {
    'spec': {
        'description': 'foo library',
        'path': '/foo/:id',
        'summary': 'return foo by id',
        'type': 'string',
        'produces': ['application/json']
    },
    'action': getFooObject()
};
swagger.addGet(getFoo)

当我在我的应用程序中尝试此操作时,http://locahost:3001/api-docs页面如下所示:

{
    apiVersion: "0.0.1",
    swaggerVersion: "1.2",
    apis: [ 
        {
            path: "/foo"
        }
    ]
}

\我尝试用字符转义双冒号。但这并没有什么不同。还尝试用双引号替换单引号。还是没有区别。我正在使用swagger-node-restify库,它是swagger-node存储库的一个分支。我究竟做错了什么?

4

1 回答 1

0

您正在描述一个 swagger 1.2 项目,该项目有多个文件来描述它。您可以在此处阅读有关 swagger 1.2 规范的更多信息:

https://github.com/OAI/OpenAPI-Specification/blob/master/versions/1.2.md

因此,您的 API 将不会在该api-docs位置进行描述。它应该api-docs/foo根据您上面的描述显示在。

请注意,这/api-docs称为资源列表,它指向 Api 声明,该声明相对于api-docsas托管/foo

最后一点,swagger 规范 1.2 已经过时了,2.0 的工具要好得多。考虑将您的项目升级到swagger-node或其他。

于 2016-01-21T14:38:33.417 回答