--- title: Body.text() slug: orphaned/Web/API/Body/text tags: - API - Fetch - 参考 - 方法 translation_of: Web/API/Body/text original_slug: Web/API/Body/text ---
{{domxref("Body")}} mixin 的 text()
方法提供了一个可供读取的“返回流”({{domxref("Response")}} stream),并将它读取完。它返回一个包含 {{domxref("USVString")}} 对象(也就是文本)的 Promise 对象,返回结果的编码永远是 UTF-8。
response.text().then(function (text) { // do something with the text response });
无。
A promise that resolves with a {{domxref("USVString")}}.
在我们 fetch text example (运行 fetch text live)的案例中, 我们有一个 {{htmlelement("article")}} 元素和三个链接(储存在 myLinks
数组中),首先,遍历 myLinks
数组,并且给数组中的所有元素添加 onclick
事件监听器,当按钮被点击的时候,链接的 data-page
标识作为会参数传入 getData()
中。
当进入 getData()
函数, 我们使用 {{domxref("Request.Request","Request()")}} 构造函数创建了一个请求(Request)对象,然后,使用它获取指定的.txt
的文件, 当fetch 函数执行成功, 我们使用 text()
函数来返回一个{{jsxref("USVString")}} (text) 对象,将它设置到 {{htmlelement("article")}} 对象的{{domxref("Element.innerHTML","innerHTML")}} (元素文本)中。
const myArticle = document.querySelector('article'); const myLinks = document.querySelectorAll('ul a'); for(i = 0; i <= myLinks.length-1; i++) { myLinks[i].onclick = function(e) { e.preventDefault(); var linkData = e.target.getAttribute('data-page'); getData(linkData); } }; function getData(pageId) { console.log(pageId); const myRequest = new Request(pageId + '.txt'); fetch(myRequest).then(function(response) { return response.text().then(function(text) { myArticle.innerHTML = text; }); }); }
规范 | 状态 | 备注 |
---|---|---|
{{SpecName('Fetch','#dom-body-text','text()')}} | {{Spec2('Fetch')}} |
{{Compat("api.Body.text")}}