import { Deno } from "https://deno.land/x/deno@v2.0.4/cli/tsc/dts/lib.deno.ns.d.ts";
const { createHttpClient } = Deno;
Create a custom HttpClient to use with fetch
. This is an
extension of the web platform Fetch API which allows Deno to use custom
TLS CA certificates and connect via a proxy while using fetch()
.
The cert
and key
options can be used to specify a client certificate
and key to use when connecting to a server that requires client
authentication (mutual TLS or mTLS). The cert
and key
options must be
provided in PEM format.
Examples
Example 1
Example 1
const caCert = await Deno.readTextFile("./ca.pem");
const client = Deno.createHttpClient({ caCerts: [ caCert ] });
const response = await fetch("https://myserver.com", { client });
Example 2
Example 2
const client = Deno.createHttpClient({
proxy: { url: "http://myproxy.com:8080" }
});
const response = await fetch("https://myserver.com", { client });
Example 3
Example 3
const key = "----BEGIN PRIVATE KEY----...";
const cert = "----BEGIN CERTIFICATE----...";
const client = Deno.createHttpClient({ key, cert });
const response = await fetch("https://myserver.com", { client });
Parameters
options: CreateHttpClientOptions | (CreateHttpClientOptions & TlsCertifiedKeyPem)