Configuration
expressly's router can be initialized with an optional configuration object:
const router = new Router({
parseCookie: true,
auto405: true,
extractRequestParameters: true,
autoContentType: true,
autoCorsPreflight: {trustedOrigins: []}
});
Options
parseCookie
Default 🟢
true
When set to true, enables parsing of the Cookie request header and exposes req.cookies.
auto405
Default 🟢
true
When set to true, expressly will respond with HTTP 405 Method Not Allowed and automatically set the Allow header if it cannot match the client request method on a matched path.
In the example below, a POST request to the /users path will result in a HTTP 405 response.
const router = new Router({ auto405: true });
router.get("/users", (req, res) => { ... });
router.listen();
Setting auto405: false above will cause expressly to respond with HTTP 404.
extractRequestParameters
Default 🟢
true
When set to true, exposes req.params, an object containing properties mapped to any named route "parameters".
autoContentType
Default 🔴
false🔥 experimental
When set to true, res.send will try to infer the Content-Type header from the data it is passed, if the header is not set.
autoCorsPreflight
Configures options for Cross-origin resource sharing automatically.
trustedOrigins: An array of origins from which to automatically accept CORS preflight requests. Using the literal value*will accept all origins but will only work if the request is being sent without credentials. See the MDN documentation on Access-Control-Allow-Origin for more.