2.0.15 • Published 3 years ago
@fmpanelli/some-middleware-setup v2.0.15
some-middleware-setup
A library containing some functions I use in my Google Cloud Functions to setup the express middleware.
Usage
The typical use is the following:
# index.ts
import express from "express";
import { errorHandler } from "@fmpanelli/some-middleware";
import { CorsMiddleware, OAuth2Middleware } from "@fmpanelli/some-middleware-setup"
// Create an Express object and routes (in order)
export const main = express();
new CorsMiddleware().setupCors(main);
new OAuth2Middleware().setupOAuth2(main);
main.get("/myapi/", myRequestHandleFunction);
main.use(errorHandler);
CORS
The call CorsMiddleware().setupCors(main)
sets up the middleware
to handle the CORS protocol. The configuration isa based on the
environment variables:
# if YES or Y the CORS middleware is enabled, otherwise it is not
CONFIG_CORS_ENABLED=YES
# list of domains enabled for CORS in JSON format
CONFIG_CORS_DOMAINS='["domain1.com","domain2.com"]'
OAuth2Middleware
The call OAuth2Middleware().setupOAuth2(main)
sets up the middleware
to handle the OAuth2 authentication with Google. The configuration is
based on the environment variables:
# if YES or Y the OAUTH2 middleware is enabled, otherwise the authorization
# is not checked
CONFIG_OAUTH2_FILTER_ENABLED=YES
# list of domains enabled for CORS in JSON format
CONFIG_OAUTH2_SERVER=https://oauth2.googleapis.com
# list of authorized client Ids
CONFIG_OAUTH2_CLIENT_IDS='["client-id-1","client-id-1"]'
# list of authorized domains: only users from those domains will be allowed
CONFIG_OAUTH2_DOMAINS='["domain1.com","domain2.com"]'
# list of whitelisted users
CONFIG_OAUTH2_WHITELIST='["whitelistedclient@somedomain.com","whitelistedclient3@somedomain.com"]
2.0.15
3 years ago
2.0.13
3 years ago
2.0.11
3 years ago
2.0.10
3 years ago
2.0.9
3 years ago
2.0.8
3 years ago
2.0.7
3 years ago
2.0.6
3 years ago
2.0.5
4 years ago
2.0.4
4 years ago
2.0.3
4 years ago
2.0.2
4 years ago
2.0.1
4 years ago
2.0.0
4 years ago
1.1.0
4 years ago
1.0.4
4 years ago
1.0.3
4 years ago
1.0.2
4 years ago
1.0.1
4 years ago