Express 类似于swagger/Swashback,但适用于node.js?

Express 类似于swagger/Swashback,但适用于node.js?,express,swagger,swashbuckle,Express,Swagger,Swashbuckle,是否有任何node express工具可以自动为现有项目生成swagger文档?类似于Swashback?我也一直在研究这一点,对您有帮助的项目是,应作为swagger node express的依赖项提供。Swagger node express包装express并将其公开为一个新接口,这意味着您将对其进行代码更改以使其正常工作。这就是路线的样子(取自他们的文档) var findById={ “规格”:{ “说明”:“宠物操作”, “路径”:“/pet.{format}/{petId}”,

是否有任何node express工具可以自动为现有项目生成swagger文档?类似于Swashback?

我也一直在研究这一点,对您有帮助的项目是,应作为swagger node express的依赖项提供。Swagger node express包装express并将其公开为一个新接口,这意味着您将对其进行代码更改以使其正常工作。这就是路线的样子(取自他们的文档)

var findById={
“规格”:{
“说明”:“宠物操作”,
“路径”:“/pet.{format}/{petId}”,
“注意事项”:“根据ID返回宠物”,
“摘要”:“按ID查找宠物”,
“方法”:“获取”,
“参数”:[swagger.pathParam(“petId”,“需要提取的宠物ID”,“字符串”),
“类型”:“宠物”,
“errorResponses”:[swagger.errors.invalid('id')、swagger.errors.notFound('pet')],
“昵称”:“getPetById”
},
“操作”:函数(请求、恢复){
如果(!requ.params.petId){
抛出swagger.errors.invalid('id');
}
var id=parseInt(请求参数petId);
var pet=petData.getPetById(id);
如果(宠物){
res.send(JSON.stringify(pet));
}否则{
抛出招摇。错误。未找到('pet');
}
}
};
如果“宠物”类型仍然需要你定义,我不会在这里重写他们的文档

然后,这将生成一个文件,swagger ui可以使用该文件为您提供一个自包含的自文档系统。swagger node express的文档非常好,足以安装它(别忘了设置swagger路径,我做了)

swagger.configureswagger路径(“,”/docs“,”);
在向您展示了理论上满足您要求的工具之后,让我解释一下为什么我得出结论,我不会使用它们

  • 需要大量的代码更改-这真的比创建代码少吗 你自己的swagger.yml文件?我不这么认为
  • 手动创建swagger.yml文件不太可能阻止您的项目
  • 虽然swagger node express并没有被删除,但它的github repo已经不存在了,它被包装到了swagger node中,但该项目并没有真正提到它
  • 我会警惕任何意味着我需要包装express的工具——这不是我想要做的事情
  • TL;医生: 这是有可能的,因为有很多代码更改-可能不是你以后的想法