首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在node-js中异步/等待获取

在node-js中异步/等待获取
EN

Stack Overflow用户
提问于 2019-02-06 22:21:14
回答 1查看 15.6K关注 0票数 13
代码语言:javascript
复制
const fetch = require("node-fetch"); 

async function getPokemon() {
  const response = await fetch('https://pokeapi.co/api/v2/pokemon/1');
  console.log(response);
  return response;
}

getPokemon();

我不确定这是否有效。我回来了:

代码语言:javascript
复制
Response {
  size: 0,
  timeout: 0,
  [Symbol(Body internals)]:
   { body:
      Gunzip {
        _readableState: [ReadableState],
        readable: true,
        _events: [Object],
        _eventsCount: 7,
        _maxListeners: undefined,
        _writableState: [WritableState],
        writable: true,
        allowHalfOpen: true,
        _transformState: [Object],
        bytesWritten: 0,
        _handle: [Zlib],
        _hadError: false,
        _writeState: [Uint32Array],
        _outBuffer:
         <Buffer 7b 22 61 62 69 6c 69 74 69 65 73 22 3a 5b 7b 22 61 62 69 6c 69 74 79 22 3a 7b 22 6e 61 6d 65 22 3a 22 63 68 6c 6f 72 6f 70 68 79 6c 6c 22 2c 22 75 72 ... >,
        _outOffset: 0,
        _level: -1,
        _strategy: 0,
        _chunkSize: 16384,
        _defaultFlushFlag: 2,
        _finishFlushFlag: 2,
        _nextFlush: -1,
        _info: undefined },
     disturbed: false,
     error: null },
  [Symbol(Response internals)]:
   { url: 'https://pokeapi.co/api/v2/pokemon/1',
     status: 200,
     statusText: 'OK',
     headers: Headers { [Symbol(map)]: [Object] } } }

这就是我要找的东西吗?或者这只是我得到的承诺?

我希望是这样的:

https://pokeapi.co/

代码语言:javascript
复制
height:7
held_items:
id:1
is_default:true
location_area_encounters:"https://pokeapi.co/api/v2/pokemon/1/encounters"
name:"bulbasaur"
order:1
name:"bulbasaur"
url:"https://pokeapi.co/api/v2/pokemon-species/1/"
// and more

我不确定问题可能是什么,也许我误解了节点中异步等待的某些方面?很抱歉我还是个初学者,非常感谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-06 22:24:30

这是我要找的对象吗?

它是响应对象。

您需要从响应对象中提取响应体并将其解析为JSON的结果。

代码语言:javascript
复制
  const response = await fetch('https://pokeapi.co/api/v2/pokemon/1');
  const data = await response.json();
  console.log(data); 

,或者这只是我得到的承诺?

不是的。你await了诺言。

票数 44
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54555778

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档