Я пытаюсь автоматически сгенерировать документ 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.