mirror of
https://github.com/ragestudio/linebridge.git
synced 2025-06-09 10:34:17 +00:00
exec controllers middlewares
This commit is contained in:
parent
c9cb0c15bd
commit
a1f38dde25
@ -38,16 +38,12 @@ class Server {
|
||||
if (localEndpoints && Array.isArray(localEndpoints)) {
|
||||
this.params.endpoints = [...this.params.endpoints ?? [], ...localEndpoints]
|
||||
}
|
||||
if (typeof middlewares !== "undefined" && Array.isArray(middlewares)) {
|
||||
this.params.middlewares = [...this.params.middlewares ?? [], ...middlewares]
|
||||
}
|
||||
// set default middlewares
|
||||
this.params.middlewares = [...this.params.middlewares ?? [], ...defaultMiddlewares]
|
||||
|
||||
//* set params jails
|
||||
this.routes = []
|
||||
this.endpoints = {}
|
||||
this.middlewares = []
|
||||
this.serverMiddlewares = [...this.params.serverMiddlewares ?? [], ...defaultMiddlewares]
|
||||
this.middlewares = this.params.middlewares ?? {}
|
||||
this.controllers = { ...this.params.controllers }
|
||||
this.headers = { ...defaultHeaders, ...this.params.headers }
|
||||
|
||||
@ -105,9 +101,17 @@ class Server {
|
||||
|
||||
handleRequest = (req, res, next, endpoint) => {
|
||||
const { route, method, controller } = endpoint
|
||||
|
||||
req.requestId = nanoid()
|
||||
req.endpoint = endpoint
|
||||
|
||||
// exec middleware before controller
|
||||
if (typeof controller.middleware !== "undefined") {
|
||||
if (typeof this.middlewares[controller.middleware] === "function") {
|
||||
this.middlewares[controller.middleware](req, res, next)
|
||||
}
|
||||
}
|
||||
|
||||
// exec controller
|
||||
if (typeof controller.exec === "function") {
|
||||
res.setHeader("request_id", req.requestId)
|
||||
@ -150,9 +154,10 @@ class Server {
|
||||
//* setup server
|
||||
this.httpServer.use(express.json())
|
||||
this.httpServer.use(express.urlencoded({ extended: true }))
|
||||
|
||||
// set middlewares
|
||||
if (Array.isArray(this.params.middlewares)) {
|
||||
this.params.middlewares.forEach((middleware) => {
|
||||
if (Array.isArray(this.serverMiddlewares)) {
|
||||
this.serverMiddlewares.forEach((middleware) => {
|
||||
if (typeof middleware === "function") {
|
||||
this.httpServer.use(middleware)
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user