提取api,为什么我必须在响应json()上使用then,试图做出承诺

塞德

我试图理解承诺,所以我在抽搐上尝试了一个简单的get请求。我不明白的是为什么会json()返还诺言。为什么 ?响应中已经包含了数据,那么为什么这是一个诺言呢?

fetch('https://api.twitch.tv/kraken/games/top?limit=10&offset=0')
    .then( resp => {
        resp.json()
            .then(function(data) {  
                        console.log(data);  
        });
  });

换句话说:首先then,我了解,它等待响应。但是,当进入then函数时,这意味着已经接收到响应,因此应该立即访问数据,而无需另外的承诺。这只是让我感到困惑。

卡琳

文档

fetch()请求的响应是一个Stream对象,这意味着当我们调用json()方法时,由于该流的读取将异步发生,因此将返回Promise。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

提取api,为什么我必须在响应json()上使用then,试图做出承诺

来自分类Dev

为什么我必须在实现类而不是仅接口类上使用@RequestParam批注?

来自分类Dev

为什么我必须在jQuery查询后使用[0]

来自分类Dev

为什么我必须在mongoDB查询中使用+

来自分类Dev

在Vue.js 3中,为什么我必须在ref上使用value属性,而不是在active上使用?

来自分类Dev

为什么我必须在npm install命令上放“ -g”?

来自分类Dev

为什么我必须在容器内使用bash -l -c?

来自分类Dev

为什么我必须在客户端库中公开宏实现的“使用”?

来自分类Dev

为什么我必须在gulp中使用乙烯基源流?

来自分类Dev

为什么我必须在学说关系中使用对象?

来自分类Dev

为什么我必须在ggplot中使用aes_string()闪亮?

来自分类Dev

为什么我们必须在Java脚本(Razor)中对C#代码使用引号

来自分类Dev

为什么我必须在str.format(* args,** kwargs)的列表前面使用*

来自分类Dev

为什么我必须在docker-compose中使用volume指令

来自分类Dev

为什么我必须在任何地方使用静态?以及如何避免?

来自分类Dev

为什么我必须在使用管道时将读取的命令放入子shell

来自分类Dev

为什么我必须在 ES6 的地图闭包中使用 return ?

来自分类Dev

为什么我必须在这个回文检查中使用 return ?

来自分类Dev

为什么我必须在onLoaderReset中交换swapCursor(null)?

来自分类Dev

为什么我必须在onLoaderReset中交换swapCursor(null)?

来自分类Dev

为什么我必须在数据加载之前点击?

来自分类Dev

为什么我必须在数据加载之前点击?

来自分类Dev

为什么必须在灰度图像上添加椒盐噪声?

来自分类Dev

为什么我必须在 GTmetrix 上测试我的网站两次才能看到 cloudflare 的速度优势?

来自分类Dev

为什么我必须在Microsoft Excel上按两次Tab键才能Alt + Tab?

来自分类Dev

我遇到了一些 C++ 代码。为什么我们必须在块中使用 *this 而不是 this?

来自分类Dev

我必须在主线程方法上使用同步吗?

来自分类Dev

我必须在ORACLE中使用什么Join?

来自分类Dev

我必须在virtocommerce中使用的基本URL是什么?

Related 相关文章

  1. 1

    提取api,为什么我必须在响应json()上使用then,试图做出承诺

  2. 2

    为什么我必须在实现类而不是仅接口类上使用@RequestParam批注?

  3. 3

    为什么我必须在jQuery查询后使用[0]

  4. 4

    为什么我必须在mongoDB查询中使用+

  5. 5

    在Vue.js 3中,为什么我必须在ref上使用value属性,而不是在active上使用?

  6. 6

    为什么我必须在npm install命令上放“ -g”?

  7. 7

    为什么我必须在容器内使用bash -l -c?

  8. 8

    为什么我必须在客户端库中公开宏实现的“使用”?

  9. 9

    为什么我必须在gulp中使用乙烯基源流?

  10. 10

    为什么我必须在学说关系中使用对象?

  11. 11

    为什么我必须在ggplot中使用aes_string()闪亮?

  12. 12

    为什么我们必须在Java脚本(Razor)中对C#代码使用引号

  13. 13

    为什么我必须在str.format(* args,** kwargs)的列表前面使用*

  14. 14

    为什么我必须在docker-compose中使用volume指令

  15. 15

    为什么我必须在任何地方使用静态?以及如何避免?

  16. 16

    为什么我必须在使用管道时将读取的命令放入子shell

  17. 17

    为什么我必须在 ES6 的地图闭包中使用 return ?

  18. 18

    为什么我必须在这个回文检查中使用 return ?

  19. 19

    为什么我必须在onLoaderReset中交换swapCursor(null)?

  20. 20

    为什么我必须在onLoaderReset中交换swapCursor(null)?

  21. 21

    为什么我必须在数据加载之前点击?

  22. 22

    为什么我必须在数据加载之前点击?

  23. 23

    为什么必须在灰度图像上添加椒盐噪声?

  24. 24

    为什么我必须在 GTmetrix 上测试我的网站两次才能看到 cloudflare 的速度优势?

  25. 25

    为什么我必须在Microsoft Excel上按两次Tab键才能Alt + Tab?

  26. 26

    我遇到了一些 C++ 代码。为什么我们必须在块中使用 *this 而不是 this?

  27. 27

    我必须在主线程方法上使用同步吗?

  28. 28

    我必须在ORACLE中使用什么Join?

  29. 29

    我必须在virtocommerce中使用的基本URL是什么?

热门标签

归档