|
1 | 1 | 'use strict'; |
2 | 2 |
|
3 | | -var path = require('path'); |
4 | | -var http = require('http'); |
| 3 | +const path = require('path'); |
| 4 | +const http = require('http'); |
| 5 | +const express = require('express'); |
| 6 | +const oasTools = require('oas-tools'); |
| 7 | +const fs = require('node:fs'); |
5 | 8 |
|
6 | | -var oas3Tools = require('oas3-tools'); |
7 | | -var serverPort = 9000; |
| 9 | +const serverPort = 9000; |
8 | 10 |
|
9 | | -// swaggerRouter configuration |
10 | | -var options = { |
11 | | - controllers: path.join(__dirname, './controllers') |
| 11 | +const app = express(); |
| 12 | + |
| 13 | +const config = { |
| 14 | + oasFile: path.resolve(__dirname, 'api/openapi.yaml'), |
| 15 | + controllers: path.resolve(__dirname, './controllers'), |
| 16 | + loglevel: 'info', |
| 17 | + docs: true // Enable Swagger UI at /docs |
12 | 18 | }; |
13 | 19 |
|
14 | | -var expressAppConfig = oas3Tools.expressAppConfig(path.join(__dirname, 'api/openapi.yaml'), options); |
15 | | -expressAppConfig.addValidator(); |
16 | | -var app = expressAppConfig.getApp(); |
| 20 | +console.log("Using OpenAPI file:", config.oasFile); |
| 21 | +console.log("Exists?", fs.existsSync(config.oasFile)); |
| 22 | + |
| 23 | +try { |
| 24 | + // Initialize oas-tools (returns app wrapper) |
| 25 | + oasTools.initialize(app, config); |
| 26 | + |
| 27 | + // Start server |
| 28 | + http.createServer(app).listen(serverPort, () => { |
| 29 | + console.log(`Server listening on http://localhost:${serverPort}`); |
| 30 | + console.log(`Swagger UI available at http://localhost:${serverPort}/docs`); |
| 31 | + }); |
17 | 32 |
|
18 | | -// Initialize the Swagger middleware |
19 | | -http.createServer(app).listen(serverPort, function () { |
20 | | - console.log('Your server is listening on port %d (http://localhost:%d)', serverPort, serverPort); |
21 | | - console.log('Swagger-ui is available on http://localhost:%d/docs', serverPort); |
22 | | -}); |
| 33 | +} catch (err) { |
| 34 | + console.error("Failed to initialize oas-tools:", err); |
| 35 | +} |
23 | 36 |
|
0 commit comments