X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fcontrollers%2Fapi%2Findex.ts;h=7bec6c527c2e368e06772755e2bddce7a12f557d;hb=e1c5503114deef954731904695cd40dccfcef555;hp=964d5d04c3c893b13b9855111f53be26220acfb6;hpb=0626e7af82e02f8a5bd1e74a7d4d8c916d073ceb;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/controllers/api/index.ts b/server/controllers/api/index.ts index 964d5d04c..7bec6c527 100644 --- a/server/controllers/api/index.ts +++ b/server/controllers/api/index.ts @@ -7,16 +7,41 @@ import { usersRouter } from './users' import { accountsRouter } from './accounts' import { videosRouter } from './videos' import { badRequest } from '../../helpers/express-utils' +import { videoChannelRouter } from './video-channel' +import * as cors from 'cors' +import { searchRouter } from './search' +import { overviewsRouter } from './overviews' +import { videoPlaylistRouter } from './video-playlist' +import { CONFIG } from '../../initializers/config' +import { pluginRouter } from './plugins' +import * as RateLimit from 'express-rate-limit' const apiRouter = express.Router() +apiRouter.use(cors({ + origin: '*', + exposedHeaders: 'Retry-After', + credentials: true +})) + +const apiRateLimiter = RateLimit({ + windowMs: CONFIG.RATES_LIMIT.API.WINDOW_MS, + max: CONFIG.RATES_LIMIT.API.MAX +}) +apiRouter.use(apiRateLimiter) + apiRouter.use('/server', serverRouter) apiRouter.use('/oauth-clients', oauthClientsRouter) apiRouter.use('/config', configRouter) apiRouter.use('/users', usersRouter) apiRouter.use('/accounts', accountsRouter) +apiRouter.use('/video-channels', videoChannelRouter) +apiRouter.use('/video-playlists', videoPlaylistRouter) apiRouter.use('/videos', videosRouter) apiRouter.use('/jobs', jobsRouter) +apiRouter.use('/search', searchRouter) +apiRouter.use('/overviews', overviewsRouter) +apiRouter.use('/plugins', pluginRouter) apiRouter.use('/ping', pong) apiRouter.use('/*', badRequest) @@ -26,6 +51,6 @@ export { apiRouter } // --------------------------------------------------------------------------- -function pong (req: express.Request, res: express.Response, next: express.NextFunction) { +function pong (req: express.Request, res: express.Response) { return res.send('pong').status(200).end() }