Use Case: Gateway Service
Harden outbound traffic in backend gateway services with security and retries.
Express Gateway
ts
1import express from "express";2import { createCrossConnection } from "cross-connection";34const app = express();5app.use(express.json());67const upstream = createCrossConnection({8 baseURL: "https://api.example.com",9 retry: { retries: 2, baseDelayMs: 90, maxDelayMs: 900 },10 security: {11 allowHosts: ["api.example.com"],12 blockPrivateIPs: true,13 blockLocalhost: true,14 },15});1617app.get("/gateway/health", async (_req, res) => {18 const response = await upstream.get("/health");19 res.status(response.status).json(response.data);20});
Telemetry Integration
ts
1const client = createCrossConnection({2 telemetry: {3 onRetry: (event) => logger.warn({ event }, "retrying upstream call"),4 onComplete: (event) => logger.info({ event }, "upstream complete"),5 },6});