这篇翻译不完整。请帮忙从英语翻译这篇文章

这是一个实验中的功能
此功能某些浏览器尚在开发中,请参考浏览器兼容性表格以得到在不同浏览器中适合使用的前缀。由于该功能对应的标准文档可能被重新修订,所以在未来版本的浏览器中该功能的语法和行为可能随之改变。

Fetch API中的 Body mixin 代表 response 或 request 的 body 属性,允许你指明它的内容类型和处理方法。

Body 从 Request 和 Response的接口实现而来 — 为这些对象提供了一个与之对应的 body 属性(字节流)、使用情况标记(初始值为未设置)和 MIME 类型(初始值为空字节序列)

该处原文:Body is implemented by both Request and Response — this provides these objects with an associated body (a byte stream), a used flag(initially unset), and a MIME type (initially the empty byte sequence).

Properties

Body.bodyUsed 只读
包含一个指示body是否被读取过的 Boolean 值。

Methods

Body.arrayBuffer()
使用一个buffer数组来读取 Response流中的数据,并将bodyUsed状态改为已使用。
Body.blob()
使用一个Blob对象来读取 Response流中的数据,并将bodyUsed状态改为已使用。
Body.formData()
使用一个 FormData 对象来读取 Response流中的数据,并将bodyUsed状态改为已使用。
Body.json()
使用一个 JSON 对象来读取 Response流中的数据,并将bodyUsed状态改为已使用。
Body.text()
使用一个USVString (文本) 对象来读取 Response流中的数据,并将bodyUsed状态改为已使用。

Examples

基本 fetch 使用实例 (查看运行效果) 中,我们使用简单的 fetch 请求获取一张图片并将其使用 <img> 标签展示。你可能注意到当我们请求一张图片,需要使用 Body.blob (Response 实现 body 接口以发送正确的MIME类型给服务器进行识别。

var myImage = document.querySelector('.my-image');
fetch('flowers.jpg').then(function(response) {
  return response.blob();
}).then(function(response) {
  var objectURL = URL.createObjectURL(response);
  myImage.src = objectURL;
});

Specifications

Specification Status Comment
Fetch
Body
Living Standard  

浏览器兼容情况

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support 42 [1]
 
39 (39) [2] 未实现

29 [3]

未实现
Feature Android Firefox Mobile (Gecko) Firefox OS (Gecko) IE Phone Opera Mobile Safari Mobile Chrome for Android
Basic support 未实现 未实现 未实现 未实现 未实现 未实现 未实现

[1] Behind a preference in version 41.

[2] Behind a preference starting with version 34.

[3] Behind a preference in version 28.

See also

 

文档标签和贡献者

 此页面的贡献者: warcryDoggie, soyaine, Jeff-Kook, git-lt, fscholz
 最后编辑者: warcryDoggie,