1.0.0 • Published 1 year ago

@httpland/http-middleware v1.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

http-middleware

HTTP middleware specification

What

Define standard HTTP middleware specifications. This is intended to increase the interoperability of the HTTP library's own middleware.

It consists only of the web standards stack and is compatible with many browsers.

Terms

Interface

Middleware interfaces can be defined in TypeScript as follows:

interface Middleware {
  (request: Request, next: Handler): Response | Promise<Response>;
}

interface Handler {
  (request: Request): Response | Promise<Response>;
}

Features

Middleware has the following features:

  • Compliant with Fetch API.
  • Compliant with Handler.

    Handler is a powerful interface for handling HTTP requests. The Middleware is purely an extension and compatibility with Handler.

  • It is a pure function.

    Middleware is a pure function that returns a value. Implementations are expected to have no side effects.

  • It is self-contained.

  • It can handle upstream.
  • It can handle downstream.
  • It can handle next handler.

Implementation

See chain-handler for a concrete implementation that can handle middleware

License

Copyright © 2023-present httpland.

Released under the MIT license