BunFetchRequestInit

Bun

Symbol

BunFetchRequestInit

interface BunFetchRequestInit

BunFetchRequestInit represents additional options that Bun supports in fetch() only.

Bun extends the fetch API with some additional options, except this interface is not quite a RequestInit, because they won't work if passed to new Request(). This is why it's a separate type.

  • body?: null | BodyInit

    A BodyInit object or null to set request's body.

  • cache?: RequestCache

    A string indicating how the request will interact with the browser's cache to set request's cache.

  • credentials?: RequestCredentials

    A string indicating whether credentials will be sent with the request always, never, or only when sent to a same-origin URL. Sets request's credentials.

  • headers?: HeadersInit

    A Headers object, an object literal, or an array of two-item arrays to set request's headers.

  • integrity?: string

    A cryptographic hash of the resource to be fetched by request. Sets request's integrity.

  • keepalive?: boolean

    A boolean to set request's keepalive.

  • method?: string

    A string to set request's method.

  • mode?: RequestMode

    A string to indicate whether the request will use CORS, or will be restricted to same-origin URLs. Sets request's mode.

  • priority?: RequestPriority
  • proxy?: string

    Override http_proxy or HTTPS_PROXY This is a custom property that is not part of the Fetch API specification.

    const response = await fetch("http://example.com", {
     proxy: "https://username:password@127.0.0.1:8080"
    });
    
  • redirect?: RequestRedirect

    A string indicating whether request follows redirects, results in an error upon encountering a redirect, or returns the redirect (in an opaque fashion). Sets request's redirect.

  • referrer?: string

    A string whose value is a same-origin URL, "about:client", or the empty string, to set request's referrer.

  • referrerPolicy?: ReferrerPolicy

    A referrer policy to set request's referrerPolicy.

  • s3?: S3Options

    Override the default S3 options

    const response = await fetch("s3://bucket/key", {
      s3: {
        accessKeyId: "AKIAIOSFODNN7EXAMPLE",
        secretAccessKey: "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
        region: "us-east-1",
      }
    });
    
  • signal?: null | AbortSignal

    An AbortSignal to set request's signal.

  • tls?: BunFetchRequestInitTLS

    Override the default TLS options

  • unix?: string

    Make the request over a Unix socket

    const response = await fetch("http://example.com", { unix: "/path/to/socket" });
    
  • verbose?: boolean

    Log the raw HTTP request & response to stdout. This API may be removed in a future version of Bun without notice. This is a custom property that is not part of the Fetch API specification. It exists mostly as a debugging tool

  • window?: null

    Can only be null. Used to disassociate request from any Window.