Swagger-UI не работает с Restify, но работает с Express - PullRequest
0 голосов
/ 21 февраля 2019

Я работаю над созданием документации для API восстановления узлов, но она не работает. Может кто-нибудь помочь мне понять, почему это произошло.Мой код выглядит следующим образом:

app.js

    require('dotenv').config();
    var restify = require('restify');
    var corsMiddleware = require('restify-cors-middleware');
    var swaggerOption=require('./app/swagger/swagger.js');
    const swaggerUi = require('swagger-ui-restify');
    const swaggerJSDoc = require('swagger-jsdoc');
    const swaggerSpec = swaggerJSDoc(swaggerOption.options);
    var cors = corsMiddleware({
            preflightMaxAge: 5,
            origins: ['*'],
            allowHeaders:['X-App-Version'],
            exposeHeaders:[]
          });
    /**
     * Initialize Server
     */
     var server = restify.createServer();

    server.pre(cors.preflight);
    server.use(cors.actual);
    server.use(restify.plugins.acceptParser(server.acceptable));
    server.use(restify.plugins.queryParser({ mapParams: true }));
    server.use(restify.plugins.bodyParser());
    server.get('/docs',swaggerUi.serve, swaggerUi.setup(swaggerSpec))
    server.get('/api-docs',swaggerUi.serve, swaggerUi.setup(swaggerSpec))

    server.listen(8080, function () {
      console.log('%s listening at %s', server.name, server.url);
    });

В моем файле swagger.js он содержит объект параметров для пользовательского интерфейса swagger и используется с swagger jsdoc.Я получаю следующее сообщение ошибка при нажатии на этот чванливый URL
http://localhost:8080/api-docs.

 Error: ENOENT: no such file or directory, stat '/var/www/html/projects/User-Workspace/node_modules/swagger-ui-restify/static/api-docs

Может ли кто-нибудь помочь мне с этим ... спасибо

...