如何使用 fetch API 取回数组?

kra*_*ave 1 javascript fetch-api

我有一个 API,它将返回一个数组给我。我尝试使用 fetch API 来取回数组。我知道如果我使用 fetch 获取一些数据,响应中的真实主体是 ReadableStream。我通常对付它通过response.json()then功能,如果数据是JSON。我不知道的是如何处理数组数据?

Nij*_*kun 5

如果您的 API 没有返回 JSON 数组,[1,2,3]那么您可以使用该.text函数来获取原始值:

fetch('/api/text').then(function(response) {
  return response.text()
}).then(function (text) {
  // parse the text here how you want, for csv:
  // return text.split(',')
})
Run Code Online (Sandbox Code Playgroud)

否则,您可以简单地使用该.json方法来获取数组值。

您提到的ArrayBuffer是读取二进制缓冲区,它可用于获取歌曲等...如果您的 API 返回此内容,我会查看链接以了解您可以做什么。您很可能需要对缓冲区进行解码,而解码的方式完全取决于您的 API 对其进行编码的方式,如果没有关于您的 API 响应的更多详细信息,我将无法回答这个问题。