Skip to main content

http

@tauri-apps/api / http

Module: http

Access the HTTP client written in Rust.

This package is also accessible with window.__TAURI__.http when tauri.conf.json > build > withGlobalTauri is set to true.

The APIs must be allowlisted on tauri.conf.json:

{
"tauri": {
"allowlist": {
"http": {
"all": true, // enable all http APIs
"request": true // enable HTTP request API
}
}
}
}

It is recommended to allowlist only the APIs you use for optimal bundle size and security.

Security

This API has a scope configuration that forces you to restrict the URLs and paths that can be accessed using glob patterns.

For instance, this scope configuration only allows making HTTP requests to the GitHub API for the tauri-apps organization:

{
"tauri": {
"allowlist": {
"http": {
"scope": ["https://api.github.com/repos/tauri-apps/*"]
}
}
}
}

Trying to execute any API with a URL not configured on the scope results in a promise rejection due to denied access.

Enumerations

Classes

Interfaces

Type Aliases

FetchOptions

Ƭ FetchOptions: Omit<HttpOptions, "url">

Options for the fetch API.

Defined in

http.ts:208


HttpVerb

Ƭ HttpVerb: "GET" | "POST" | "PUT" | "DELETE" | "PATCH" | "HEAD" | "OPTIONS" | "CONNECT" | "TRACE"

The request HTTP verb.

Defined in

http.ts:183


Part

Ƭ Part: string | Uint8Array | FilePart<Uint8Array>

Defined in

http.ts:70


RequestOptions

Ƭ RequestOptions: Omit<HttpOptions, "method" | "url">

Request options.

Defined in

http.ts:206

Functions

fetch

fetch<T>(url, options?): Promise<Response<T>>

Perform an HTTP request using the default client.

example

import { fetch } from '@tauri-apps/api/http';
const response = await fetch('http://localhost:3003/users/2', {
method: 'GET',
timeout: 30,
});

Type parameters

Name
T

Parameters

NameTypeDescription
urlstringThe request URL.
options?FetchOptionsThe fetch options.

Returns

Promise<Response<T>>

The response object.

Defined in

http.ts:505


getClient

getClient(options?): Promise<Client>

Creates a new client using the specified options.

example

import { getClient } from '@tauri-apps/api/http';
const client = await getClient();

Parameters

NameTypeDescription
options?ClientOptionsClient configuration.

Returns

Promise<Client>

A promise resolving to the client instance.

Defined in

http.ts:477