Skip to content

ZLink HTTP Client For Node — User Guide

⚠️ This guide is not current. The only guide that has finished review and upkeep right now is the .NET guide. This document reflects an earlier state, and once the .NET guide is finished, this document will be deleted and rewritten based on it.

When confirming the contract, don't trust this document — check the spec tree.

@zlink-systems/http-client is a general-purpose HTTP client for sending HTTP requests from Node. It is used with a zlink-style fluent builder, and the public surface does not expose undici types.

import { ZLinkHttpClient } from '@zlink-systems/http-client';

const game = await ZLinkHttpClient.create('https://game-api.example.internal')
  .post('/games')
  .body({ name: 'ranked-match-0611' })
  .submit<CreateGameRes>();

Table Of Contents

Chapter Document Content
1 Overview Design philosophy, deliverable boundary, execution model
2 Getting Started Package reference, first request, one-line request
3 Client Configuration Builder options, client reuse, undici mapping
4 Making Requests HTTP methods, query parameters, headers, request timeout
5 Request Body JSON, raw, form, multipart, streaming upload
6 Handling Responses Response structure, submit, status handling
7 Async Promise, await, non-blocking guarantee
8 Streaming download(sink) download, chunked upload
9 Authentication And TLS Basic/Bearer, HTTPS verification, mTLS
10 Redirect · Retry · Cookie Redirect semantics, retries, cookie jar
11 Proxy HTTP proxy, proxy authentication
12 Compression Transparent gzip/deflate decoding
13 Error Handling Error kind mapping, retriable, exception paths

Quick Guide

The formal contract and regression test axes are owned by the spec document node-http-client.ko.md.