Files
medusa-store/www/apps/docs/content/references/services/classes/MiddlewareService.mdx
github-actions[bot] cdd42dbdcd chore(docs): Generated References (#5743)
Generated the following references:
- `entities`
- `inventory`
- `js-client`
- `pricing`
- `product`
- `services`
- `stock-location`
- `workflows`

Co-authored-by: Oli Juhl <59018053+olivermrbl@users.noreply.github.com>
Co-authored-by: Shahed Nasser <27354907+shahednasser@users.noreply.github.com>
2023-11-27 18:58:52 +00:00

406 lines
7.4 KiB
Plaintext

---
displayed_sidebar: servicesSidebar
---
import ParameterTypes from "@site/src/components/ParameterTypes"
# MiddlewareService
Orchestrates dynamic middleware registered through the Medusa Middleware API
## Constructors
#### constructor
`**new MiddlewareService**()`
## Properties
<ParameterTypes parameters={[
{
"name": "postAuthentication_",
"type": "[middlewareType](../types/middlewareType.mdx)[]",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "preAuthentication_",
"type": "[middlewareType](../types/middlewareType.mdx)[]",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "preCartCreation_",
"type": "RequestHandler&#60;ParamsDictionary, any, any, ParsedQs, Record&#60;string, any&#62;&#62;[]",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "routers",
"type": "`Record<string, Router[]>`",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
## Methods
#### addPostAuthentication
`**addPostAuthentication**(middleware, options): void`
Adds a middleware function to be called after authentication is completed.
##### Parameters
<ParameterTypes parameters={[
{
"name": "middleware",
"type": "[middlewareHandlerType](../types/middlewareHandlerType.mdx)",
"description": "the middleware function. Should return a middleware function.",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "options",
"type": "`Record<string, unknown>`",
"description": "the arguments that will be passed to the middleware",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
##### Returns
`void`
<ParameterTypes parameters={[
{
"name": "void",
"type": "`void`",
"optional": true,
"defaultValue": "",
"description": "void",
"expandable": false,
"children": []
}
]} />
___
#### addPreAuthentication
`**addPreAuthentication**(middleware, options): void`
Adds a middleware function to be called before authentication is completed.
##### Parameters
<ParameterTypes parameters={[
{
"name": "middleware",
"type": "[middlewareHandlerType](../types/middlewareHandlerType.mdx)",
"description": "the middleware function. Should return a middleware function.",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "options",
"type": "`Record<string, unknown>`",
"description": "the arguments that will be passed to the middleware",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
##### Returns
`void`
<ParameterTypes parameters={[
{
"name": "void",
"type": "`void`",
"optional": true,
"defaultValue": "",
"description": "void",
"expandable": false,
"children": []
}
]} />
___
#### addPreCartCreation
`**addPreCartCreation**(middleware): void`
Adds a middleware function to be called before cart creation
##### Parameters
<ParameterTypes parameters={[
{
"name": "middleware",
"type": "RequestHandler&#60;ParamsDictionary, any, any, ParsedQs, Record&#60;string, any&#62;&#62;",
"description": "the middleware function. Should return a middleware function.",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
##### Returns
`void`
<ParameterTypes parameters={[
{
"name": "void",
"type": "`void`",
"optional": true,
"defaultValue": "",
"description": "",
"expandable": false,
"children": []
}
]} />
___
#### addRouter
`**addRouter**(path, router): void`
##### Parameters
<ParameterTypes parameters={[
{
"name": "path",
"type": "`string`",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
},
{
"name": "router",
"type": "Router",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
##### Returns
`void`
<ParameterTypes parameters={[
{
"name": "void",
"type": "`void`",
"optional": true,
"defaultValue": "",
"description": "",
"expandable": false,
"children": []
}
]} />
___
#### getRouters
`**getRouters**(path): Router[]`
##### Parameters
<ParameterTypes parameters={[
{
"name": "path",
"type": "`string`",
"description": "",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
##### Returns
Router[]
<ParameterTypes parameters={[
{
"name": "Router[]",
"type": "Router[]",
"optional": false,
"defaultValue": "",
"description": "",
"expandable": false,
"children": []
}
]} />
___
#### usePostAuthentication
`**usePostAuthentication**(app): void`
Adds post authentication middleware to an express app.
##### Parameters
<ParameterTypes parameters={[
{
"name": "app",
"type": "Router",
"description": "the express app to add the middleware to",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
##### Returns
`void`
<ParameterTypes parameters={[
{
"name": "void",
"type": "`void`",
"optional": true,
"defaultValue": "",
"description": "",
"expandable": false,
"children": []
}
]} />
___
#### usePreAuthentication
`**usePreAuthentication**(app): void`
Adds pre authentication middleware to an express app.
##### Parameters
<ParameterTypes parameters={[
{
"name": "app",
"type": "Router",
"description": "the express app to add the middleware to",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
##### Returns
`void`
<ParameterTypes parameters={[
{
"name": "void",
"type": "`void`",
"optional": true,
"defaultValue": "",
"description": "",
"expandable": false,
"children": []
}
]} />
___
#### usePreCartCreation
`**usePreCartCreation**(): RequestHandler&#60;ParamsDictionary, any, any, ParsedQs, Record&#60;string, any&#62;&#62;[]`
##### Returns
RequestHandler&#60;ParamsDictionary, any, any, ParsedQs, Record&#60;string, any&#62;&#62;[]
<ParameterTypes parameters={[
{
"name": "RequestHandler&#60;ParamsDictionary, any, any, ParsedQs, Record&#60;string, any&#62;&#62;[]",
"type": "RequestHandler&#60;ParamsDictionary, any, any, ParsedQs, Record&#60;string, any&#62;&#62;[]",
"optional": false,
"defaultValue": "",
"description": "",
"expandable": false,
"children": []
}
]} />
___
#### validateMiddleware\_
`**validateMiddleware_**(fn): void`
Validates a middleware function, throws if fn is not of type function.
##### Parameters
<ParameterTypes parameters={[
{
"name": "fn",
"type": "`unknown`",
"description": "the middleware function to validate.",
"optional": false,
"defaultValue": "",
"expandable": false,
"children": []
}
]} />
##### Returns
`void`
<ParameterTypes parameters={[
{
"name": "void",
"type": "`void`",
"optional": true,
"defaultValue": "",
"description": "nothing if the middleware is a function",
"expandable": false,
"children": []
}
]} />