асинхронная / ожидающая выборка в node-js - PullRequest
0 голосов
/ 06 февраля 2019
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();

Я не уверен, что это работает.Я получаю обратно:

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/

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

Я не уверен, в чем может быть проблема, может быть, я что-то неправильно понимаю в асинхронном ожидании вузел?Извините за то, что вы новичок, заранее большое спасибо!

1 Ответ

0 голосов
/ 06 февраля 2019

это тот объект, который я ищу?

Это объект ответа.

Вы хотите получить результаты извлечения тела ответа из объекта ответа и анализа его как JSON.

  const response = await fetch('https://pokeapi.co/api/v2/pokemon/1');
  const data = await response.json();
  console.log(data); 

Или это только обещание, которое я получаю обратно?

Нет.Вы await отредактировали обещание.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...