I want to add an API common prefix for all controllers, e.g. /api/v1. I am using inversify with the @inversify/http-express package.
Here is my current base server adapter setup:
class Server {
private adapter: InversifyExpressHttpAdapter;
constructor(private readonly container: Container) {
this.adapter = new InversifyExpressHttpAdapter(this.container, {
useCookies: true,
useJson: true,
});
this.adapter.applyGlobalMiddleware(CorsMiddleware);
this.adapter.applyGlobalMiddleware(HelmetMiddleware);
this.adapter.applyGlobalMiddleware(RateLimitMiddleware);
this.adapter.applyGlobalMiddleware(CookieParserMiddleware);
this.adapter.applyGlobalMiddleware(LoggerMiddleware);
const swaggerProvider: SwaggerUiProvider = new SwaggerUiProvider({
api: {
openApiObject: {
info: {
title: "My Backend",
version: pkg.version,
},
openapi: "3.1.1",
},
path: "/docs",
},
ui: {
title: "My backend API docs",
},
});
swaggerProvider.provide(this.container);
this.adapter.useGlobalFilters(GlobalErrorFilter);
}
public async getApp() {
const app = await this.adapter.build();
app.use(notFoundMiddleware);
return app;
}
}
Here I'm using InversifyExpressHttpAdapter class. Now, how can I add api common prefix?