Body.body - Web API 接口参考 编辑
Body
mixin的只读getter属性 body
用于暴露其body内容的ReadableStream
(流读取)。
语法
var stream = responseInstance.body;
Value
一个 ReadableStream
.
例程
在我们的 simple stream pump 例程中我们fetch一个图片地址,使用response.body
暴露响应的流,用ReadableStream.getReader()
创建一个读取器,然后将其置入第二个自定义读取流中——有效的创建了一个完全相同的图片副本。
const image = document.getElementById('target');
// 请求原始图片
fetch('./tortoise.png')
// 取出body
.then(response => response.body)
.then(body => {
const reader = body.getReader();
return new ReadableStream({
start(controller) {
return pump();
function pump() {
return reader.read().then(({ done, value }) => {
// 读不到更多数据就关闭流
if (done) {
controller.close();
return;
}
// 将下一个数据块置入流中
controller.enqueue(value);
return pump();
});
}
}
})
})
.then(stream => new Response(stream))
.then(response => response.blob())
.then(blob => URL.createObjectURL(blob))
.then(url => console.log(image.src = url))
.catch(err => console.error(err));
规范
规范 | 状态 | 备注 |
---|---|---|
Fetch body | Living Standard |
浏览器兼容性
BCD tables only load in the browser
相关链接
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论