@blubox/gateway
TypeScript icon, indicating that this package has built-in type declarations

0.0.5 • Public • Published

@blubox/gateway

Blubox API Gateway

Installation

npm i @blubox/gateway

Quick start

Install dependencies

npm install blubox @blubox/gateway

Create a Blubox application with Gateway

const { router, App } = require('blubox')
const gateway = require('@blubox/gateway')

const app = new App(
	router({
		'*': gateway([
			{ from: '/users', to: 'http://localhost:3001/', replace: '/users' },
			{ from: '/items', to: 'http://localhost:3002/', replace: '/items' },
		]),
	})
)
app.listen(3000)

gateway(options)

/**
 * CORS OPTIONS
 *
 * @param {Object} [options]
 *  - {String|Function(url) => boolean} "from" where the request should come from to be redirected.
 *  - {String|Function(url) => string} "replace" which must be replaced from the pathname before being redirected. (optional)
 * @return {Function} gateway controller
 *
 */

gateway(options, controller)

You can optionally set a custom controller.

const { Controller } = require('blubox')
const controller = new Controller()
gateway({ ...options }, controller)

License

MIT

Package Sidebar

Install

npm i @blubox/gateway

Weekly Downloads

0

Version

0.0.5

License

MIT

Unpacked Size

7.02 kB

Total Files

6

Last publish

Collaborators

  • gnzcode