Настройка Swagger UI с помощью Express.Router () - PullRequest
0 голосов
/ 11 октября 2019

Я пытаюсь автоматически сгенерировать документ API. он работает нормально, когда я использую экспресс, но он не работает, когда я использую express.router ()

Server.js

const app = express(express);
swaggerDoc(app);
endpoints(app);

endpoint.js

var routes = require('./routes.js');
const initialEndPoint=(app)=>{
         app.use('/api',routes);
}

Настройка Swagger

const swaggerUi = require('swagger-ui-express');
const swaggerJsdoc = require('swagger-jsdoc');
const router = require('express').Router();
module.exports=(app)=>{
   // following line work 
   // app.use('/api-docs',swaggerUi.serve,swaggerUi.setup(specs));
  // with router its not working
    router.use('/api-doc',swaggerUi.serve);
   router.get('/api-doc',swaggerUi.setup(specs));
}

маршруты

var express = require('express')
  , router = express.Router();

    /**
     * @swagger
     * /hello1:
     *      get:
     *          description: This should return all users
     */
router.use('/1', (req,res)=>{ res.end('11111')});
  /**
     * @swagger
     * /hello2:
     *      get:
     *          description: This should return all users
     */
//not working    
//router.route('/2',(req,res)=>{ res.end('22222')});
router.route('/2')
.get((req,res)=>{ res.end('22222')});

Я не понимаю, почему Swagger не работает с router.route.

...