web-dev-qa-db-ja.com

Javascriptノードフェッチ同期フェッチ

Nodejsでnode-fetchを使用して、個人のAPIにAPI呼び出しを行おうとしています。背後でデータベースが更新/変更されると、これ内で特定の値を定期的に同期的に更新できるようにしたいと思います。私は非同期と待機が存在することを知っていますが、すべてのグーグルでは、まだそれらやフェッチリクエストとのやり取りをよく理解していません。

これは、私が動作するようにしようとしているコードの例ですが、未定義のログを記録するだけです

const fetch = require('node-fetch');
const url = 'http://example.com';
let logs;

example();
console.log(logs);
async function example(){
    //Do things here
    logs = await retrieveLogs();
    //Do more things here
}

async function retrieveLogs(){
    await fetch(url)
    .then(res => res.json())
    .then(json => {return json})
    .catch(e => console.log(e))
}
6
Wallace Alley

次のようなretrieveLogs関数の結果を返す必要があると思います。

async function retrieveLogs(){
    return await fetch(url)
    .then(res => res.json())
}
6
Ali Torki