Génération OpenAPI
ts
import { createHub, routeStore } from "@duplojs/http";
import { createHttpServer } from "@duplojs/http/node";
import { openApiGeneratorPlugin } from "@duplojs/http/openApiGenerator";
const hub = createHub({ environment: "DEV" })
.register(routeStore.getAll())
.plug(
openApiGeneratorPlugin({
outputFile: "swagger.json",
routePath: "/swagger-ui",
}),
);
await createHttpServer(
hub,
{
host: "localhost",
port: 1506,
},
);Pour générer la configuration Swagger de toutes vos routes, il suffit d'utiliser la fonction openApiGeneratorPlugin depuis @duplojs/http/openApiGenerator dans le Hub et de démarrer avec la variable d'environnement sur DEV ou sur BUILD.
- Le paramètre
outputFilevous permet de définir dans quel fichier sera écrite la configuration. - Le paramètre
routePathvous permet de définir sur quel path vous pouvez accéder à l'UI Swagger. ...Le reste des paramètres permet de définir des options sur le fichier de configuration Swagger.
WARNING
Vous êtes obligé d'avoir une implémentation de serveur HTTP, car le plugin se lie au hook beforeServerBuildRoutes qui se lance uniquement via des fonctions d'interfaçage comme createHttpServer. Lancez avec le Hub configuré en mode BUILD pour que le serveur HTTP ne se lance pas.
