包详细信息

popsicle-transport-http

serviejs453.3kMIT1.2.1

Popsicle transport for sending requests over HTTP1 and HTTP2

popsicle, transport, http, http2

自述文件

Popsicle Transport HTTP

NPM version NPM downloads Build status Build coverage

Popsicle transport for sending requests over HTTP1 and HTTP2.

Installation

npm install popsicle-transport-http --save

Usage

import { transport } from "popsicle-transport-http";

const req = new Request("/");
const res = await transport()(req, done);

Transport Options

The transport function sends the Servie Request to a remote server.

  • keepAlive?: number Duration to keep connection alive for re-use (default: 5000)
  • servername?: string Override remote server name for TLS
  • rejectUnauthorized?: boolean Rejects unauthorized TLS connections
  • negotiateHttpVersion?: NegotiateHttpVersion Configure HTTP version negotiation (default: HTTP2_FOR_HTTPS)
  • lookup?: DnsLookup Override default DNS resolution (default: dns.lookup)
  • TLS options:
    • ca?: string | Buffer | Array<string | Buffer> Set TLS CA
    • cert?: string | Buffer Set TLS certificate
    • key?: string | Buffer Set TLS key
    • secureContext?: SecureContext Set TLS secure context
    • secureProtocol?: string Set TLS secure protocol
    • secureOptions?: number Set TLS secure options
  • Custom connection managers (default: Infinity active sockets):
    • tlsSockets?: ConnectionManager<TLSSocket>
    • netSockets?: ConnectionManager<Socket>
    • http2Sessions?: ConnectionManager<ClientHttp2Session>
  • Custom create connections (all methods support async promises):
    • createHttp2Connection?: (authority, socket) => ClientHttp2Session
    • createNetConnection?: (options) => Socket
    • createTlsConnection?: (options) => TLSSocket

TypeScript

This project is written using TypeScript and publishes the definitions directly to NPM.

License

MIT