gpt4 book ai didi

node.js - worknik 的 swagger 列表 api

转载 作者:太空宇宙 更新时间:2023-11-03 23:29:25 25 4
gpt4 key购买 nike

我使用了 swagger-express npm 模块来配置与我的服务器并行的 api 文档,这样它可以帮助开发人员跟踪所有 api。

我的文件夹结构是

/
/api
swagger/
swagger.json
swagger.yml
/swagger /*Having all the index file and configs as given their like public dir*/

我的中间件配置是这样的

var swagger = require('swagger-express');
app.use(swagger.init(app, {
apiVersion : '1.0',
swaggerVersion: '1.0',
swaggerURL : '/swagger',
swaggerJSON : 'api/swagger/swagger.json',
swaggerUI : './swagger/',
basePath : 'http://localhost:1222',
info : {
title : 'swagger-express sample app',
description: 'Swagger + Express = {swagger-express}'
},
apis : ['api/swagger/swagger.yml'],
middleware : function (req, res) {}
}));

我的服务器正在端口 1222 上运行。现在,虽然 SwaggerUI 已成功加载,但它从 wordnik 的域读取 api。

  1. 它如何从我的 swagger.yml 读取 api
  2. 如果我提到 swagger.yml 那么 swagger.json 的相关性和用途是什么
  3. SwaggerUI 中的 discoverURL 是什么?如果我提到我的 json 路径 (http://localhost:1222/swagger/),它会以“discoveryUrl basePath 必须是 URL”之类的错误结尾。

他们有什么办法可以列出与服务器并行的所有 api 吗?那么它也可以测试吗?我想要 Swagger 。

最佳答案

嘿试试这个https://www.npmjs.com/package/hapi-swagger

npm 安装 hapi-swagger --save

npm install inert --save

npm 安装愿景 --save

const Hapi = require('hapi');
const Inert = require('inert');
const Vision = require('vision');
const HapiSwagger = require('hapi-swagger');
const Pack = require('./package');

const server = new Hapi.Server();
server.connection({
host: 'localhost',
port: 3000
});

const options = {
info: {
'title': 'Test API Documentation',
'version': Pack.version,
}
};

server.register([
Inert,
Vision,
{
'register': HapiSwagger,
'options': options
}], (err) => {
server.start( (err) => {
if (err) {
console.log(err);
} else {
console.log('Server running at:', server.info.uri);
}
});
});

server.route(Routes);

关于node.js - worknik 的 swagger 列表 api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39940741/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com