跳转到主要内容
在本页上

HTTP 请求

Request 接口是 Fetch API 的一部分,表示 fetch() 的请求。

构造函数 跳转到标题

Request() 构造函数创建一个新的 Request 实例。

let request = new Request(input, init);

参数 跳转到标题

名称 类型 可选 描述
资源 RequestUSVString 资源可以是请求对象或 URL 字符串。
init RequestInit init 对象允许您设置应用于请求的可选参数。

返回类型是 Request 实例。

RequestInit 跳转到标题
名称 类型 默认值 描述
method 字符串 GET 请求的方法。
headers Headers{ [key: string]: string } 请求的标头。
body BlobBufferSourceFormDataURLSearchParamsUSVStringReadableStream 请求的正文。
cache 字符串 请求的缓存模式。
credentials 字符串 same-origin 请求的凭据模式。
integrity 字符串 请求正文的加密哈希值。
mode 字符串 cors 您想要使用的请求模式。
redirect 字符串 follow 重定向处理模式。
referrer 字符串 about:client 指定 no-referrerclient 或 URL 的 USVString

属性 跳转到标题

名称 类型 描述
cache 字符串 缓存模式指示浏览器应如何缓存请求(defaultno-cache 等)。
credentials 字符串 凭据(omitsame-origin 等)指示用户代理在请求的跨域资源共享 (CORS) 情况下是否应发送 Cookie。
目标 RequestDestination 该字符串指示正在请求的内容类型。
body ReadableStream getter 公开正文内容的 ReadableStream
bodyUsed 布尔值 指示是否已读取正文内容。
url USVString 请求的 URL。
headers Headers 与请求关联的标头。
integrity 字符串 请求正文的加密哈希值。
method 字符串 请求的方法(POSTGET 等)。
mode 字符串 指示请求的模式(例如 cors)。
redirect 字符串 重定向处理模式。
referrer 字符串 请求的引用来源。
referrerPolicy 字符串 请求的引用来源策略

以上所有属性均为只读。

方法 跳转到标题

名称 描述
arrayBuffer() 读取正文流直至完成,并返回一个 ArrayBuffer 对象。
blob() 读取正文流直至完成,并返回一个 Blob 对象。
formData() 读取正文流直至完成,并返回一个 FormData 对象。
json() 读取正文流直至完成,将其解析为 JSON 并返回一个 JavaScript 对象。
text() 读取正文流直至完成,并返回一个 USVString 对象(文本)。
clone() 克隆 Request 对象。

示例 跳转到标题

function handler(_req) {
  // Create a post request
  const request = new Request("https://post.deno.dev", {
    method: "POST",
    body: JSON.stringify({
      message: "Hello world!",
    }),
    headers: {
      "content-type": "application/json",
    },
  });

  console.log(request.method); // POST
  console.log(request.headers.get("content-type")); // application/json

  return fetch(request);
}

Deno.serve(handler);