混淆获取API的工作方式

时间:2019-07-14 01:00:46

标签: javascript

我正在学习提取api,对此代码有些困惑:

fetch('/article/promise-chaining/user.json')
  // .then below runs when the remote server responds
  .then(function(response) {
    // response.text() returns a new promise that resolves with the full response text
    // when we finish downloading it
    return response.text();
  })
  .then(function(text) {
    // ...and here's the content of the remote file
    alert(text); // {"name": "iliakan", isAdmin: true}
  });

因此,从上述代码中您可以看到,我们将Get请求发送到某个位置。然后访存将返回带有仅包含标头的响应对象的Promise,作为响应没有文件本身。那是对的吗?然后,为了获取文件本身作为文本,我们向服务器提出了附加请求。那是对的吗?或者,如果我们要使用response.json(),则服务器将向我们发送已解析的JSON

1 个答案:

答案 0 :(得分:0)

兑现承诺并发出HTTP请求是不同的事情。在获取的情况下,您确实确实将一个承诺链接到另一个承诺,但是这样做并不会导致向服务器发出另一个HTTP请求。取而代之的是,第一个承诺在收到标头后实现,然后第二个承诺在收到相同请求的主体后实现。