メインコンテンツへスキップ
注意: このページはまだ日本語に翻訳されていません。以下は英語の原文です。
Represents a request for a resource using a URI. By default, the supported schemes are HTTP, HTTPS, data:, and IPFS:. Additional schemes can be added globally using registerGateway.

Example

Implements

  • Iterable<[string, string]>

Constructors

new FetchRequest()

Create a new FetchRequest instance with default values. Once created, each property may be set before issuing a .send() to make the request.

Parameters

ParameterType
urlstring

Returns

FetchRequest

Source

utils/fetch.ts:503

Accessors

allowGzip

Enable and request gzip-encoded responses. The response will automatically be decompressed. (default: true)

Returns

boolean

Source

utils/fetch.ts:413

allowInsecureAuthentication

Allow Authentication credentials to be sent over insecure channels. (default: false)

Returns

boolean

Source

utils/fetch.ts:423

body

The fetch body, if any, to send as the request body. (default: null) When setting a body, the intrinsic Content-Type is automatically set and will be used if not overridden by setting a custom header. If body is null, the body is cleared (along with the intrinsic Content-Type). If body is a string, the intrinsic Content-Type is set to text/plain. If body is a Uint8Array, the intrinsic Content-Type is set to application/octet-stream. If body is any other object, the intrinsic Content-Type is set to application/json.

Returns

null | Uint8Array

Source

utils/fetch.ts:265

credentials

The value that will be sent for the Authorization header. To set the credentials, use the setCredentials method.

Returns

null | string

Source

utils/fetch.ts:394

getUrlFunc

This function is called to fetch content from HTTP and HTTPS URLs and is platform specific (e.g. nodejs vs browsers). This is by default the currently registered global getUrl function, which can be changed using registerGetUrl. If this has been set, setting is to null will cause this FetchRequest (and any future clones) to revert back to using the currently registered global getUrl function. Setting this is generally not necessary, but may be useful for developers that wish to intercept requests or to configurege a proxy or other agent.

Returns

FetchGetUrlFunc

Source

utils/fetch.ts:491

headers

The headers that will be used when requesting the URI. All keys are lower-case. This object is a copy, so any changes will NOT be reflected in the FetchRequest. To set a header entry, use the setHeader method.

Returns

Record<string, string>

Source

utils/fetch.ts:323

method

The HTTP method to use when requesting the URI. If no method has been explicitly set, then GET is used if the body is null and POST otherwise.

Returns

string

Source

utils/fetch.ts:300

preflightFunc

This function is called prior to each request, for example during a redirection or retry in case of server throttling. This offers an opportunity to populate headers or update content before sending a request.

Returns

null | FetchPreflightFunc

Source

utils/fetch.ts:447

processFunc

This function is called after each response, offering an opportunity to provide client-level throttling or updating response data. Any error thrown in this causes the send() to throw. To schedule a retry attempt (assuming the maximum retry limit has not been reached), use FetchResponse.throwThrottleError.

Returns

null | FetchProcessFunc

Source

utils/fetch.ts:463

retryFunc

This function is called on each retry attempt.

Returns

null | FetchRetryFunc

Source

utils/fetch.ts:473

timeout

The timeout (in milliseconds) to wait for a complete response. (default: 5 minutes)

Returns

number

Source

utils/fetch.ts:433

url

The fetch URL to request.

Returns

string

Source

utils/fetch.ts:244

Methods

cancel()

Cancels the inflight response, causing a CANCELLED error to be rejected from the send.

Returns

void

Source

utils/fetch.ts:656

clearHeaders()

Clear all headers, resetting all intrinsic headers.

Returns

void

Source

utils/fetch.ts:367

clone()

Create a new copy of this request.

Returns

FetchRequest The new request.

Source

utils/fetch.ts:709

getHeader()

Get the header for key, ignoring case.

Parameters

ParameterTypeDescription
keystringThe header key to retrieve.

Returns

string The header value.

Source

utils/fetch.ts:350

hasBody()

Returns true if the request has a body.

Returns

this is FetchRequest & Object

Source

utils/fetch.ts:292

redirect()

Returns a new FetchRequest that represents the redirection to location.

Parameters

ParameterTypeDescription
locationstringThe location to redirect to.

Returns

FetchRequest The new request.

Source

utils/fetch.ts:673

send()

Resolves to the response by sending the request.

Returns

Promise<FetchResponse>

Source

utils/fetch.ts:644

setCredentials()

Sets an Authorization for username with password.

Parameters

ParameterTypeDescription
usernamestringThe username to use for basic authentication.
passwordstringThe password to use for basic authentication.

Returns

void

Throws

If the username contains a colon.

Source

utils/fetch.ts:405

setHeader()

Set the header for key to value. All values are coerced to a string.

Parameters

ParameterTypeDescription
keystringThe header key to set.
valuestring | numberThe header value to set.

Returns

void

Source

utils/fetch.ts:360

setThrottleParams()

Update the throttle parameters used to determine maximum attempts and exponential-backoff properties.

Parameters

ParameterTypeDescription
paramsFetchThrottleParamsThe throttle parameters to set.

Returns

void

Throws

If the slotInterval is not a positive integer.

Source

utils/fetch.ts:530

createDataGateway()

Creates a function that can “fetch” data URIs. Note that this is automatically done internally to support data URIs, so it is not necessary to register it. This is not generally something that is needed, but may be useful in a wrapper to perfom custom data URI functionality.

Returns

FetchGatewayFunc The gateway function.

Source

utils/fetch.ts:827

createGetUrlFunc()

Creates a getUrl function that fetches content from HTTP and HTTPS URLs. The available options are dependent on the platform implementation of the default getUrl function. This is not generally something that is needed, but is useful when trying to customize simple behaviour when fetching HTTP content.

Parameters

ParameterTypeDescription
options?Record<string, any>The options to use when creating the getUrl function.

Returns

FetchGetUrlFunc The getUrl function.

Throws

If the gateways are locked.

Source

utils/fetch.ts:813

createIpfsGatewayFunc()

Creates a function that will fetch IPFS (unvalidated) from a custom gateway baseUrl. The default IPFS gateway used internally is "https://gateway.ipfs.io/ipfs/".

Parameters

ParameterTypeDescription
baseUrlstringThe base URL of the IPFS gateway.

Returns

FetchGatewayFunc The gateway function.

Source

utils/fetch.ts:839

getGateway()

Get the current Gateway function for scheme.

Parameters

ParameterTypeDescription
schemestringThe scheme to get the gateway for.

Returns

null | FetchGatewayFunc The gateway function, or null if not found.

Source

utils/fetch.ts:758

lockConfig()

Locks all static configuration for gateways and FetchGetUrlFunc registration.

Returns

void

Source

utils/fetch.ts:748

registerGateway()

Use the func when fetching URIs using scheme. This method affects all requests globally. If lockConfig has been called, no change is made and this throws.

Parameters

ParameterTypeDescription
schemestringThe scheme to register the gateway for.
funcFetchGatewayFuncThe gateway function to use.

Returns

void

Throws

If the scheme is http or https.

Source

utils/fetch.ts:773

registerGetUrl()

Use getUrl when fetching URIs over HTTP and HTTPS requests. This method affects all requests globally. If lockConfig has been called, no change is made and this throws.

Parameters

ParameterTypeDescription
getUrlFetchGetUrlFuncThe function to use for fetching HTTP and HTTPS URIs.

Returns

void

Throws

If the gateways are locked.

Source

utils/fetch.ts:794