如何在Node.js和Express中从一个项目访问swagger api文档到另一个项目?

问题描述

Swagger实现:

import logging
from flask import Flask,jsonify

app = Flask(__name__)

if __name__ != '__main__':
    gunicorn_logger = logging.getLogger('gunicorn.error')
    app.logger.handlers = gunicorn_logger.handlers
    app.logger.setLevel(gunicorn_logger.level)

@app.route('/')
def default_route():
    """Default route"""
    app.logger.debug('this is a DEBUG message')
    app.logger.info('this is an INFO message')
    app.logger.warning('this is a WARNING message')
    app.logger.error('this is an ERROR message')
    app.logger.critical('this is a CRITICAL message')
    return jsonify('hello world')

if __name__ == '__main__':
    app.run(host='0.0.0.0',port=8000,debug=True)

我有2个nodejs-express项目,并按照上述代码实施了大摇大摆:

  1. 第一个在http:localhost:3001中运行的项目
  2. 在http:localhost:3002中运行的第二个项目

我有仅用于swagger文档的第三个项目,该项目运行在http:localhost:3000中,我只想使用swagger api文档的浏览器来访问该第三个项目中的(1),(2)个项目文档,但是我无法通过项目的网址直接访问它,

const express = require('express');
const router = express.Router();
const swaggerUi = require('swagger-ui-express');
const swaggerJSDoc = require('swagger-jsdoc');
module.exports = async (app) => {
    router.use('/',swaggerUi.serve,swaggerUi.setup(
        swaggerJSDoc({
            swaggerDefinition: { ...require('../swagger.json') },apis: ['./app/**/*.js']
        }),{
            swaggerOptions: {
                displayRequestDuration: true,docExpansion: "none",filter: false,showExtensions: true,showCommonExtensions: true,displayOperationId: true
            }
        }
    ));
    app.use('/api-docs',router);  // SET SWAGGER DOCS
}

说无法加载api定义。

我做错了方法还是要为此实施其他npm?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)