如何从请求调用返回?

时间:2019-06-05 21:10:40

标签: javascript node.js node-request

您好,我正在学习有关同步和javasctipt中的异步代码的信息,我想可以从此函数返回一个值:

const gePokemon = id => {
    request('https://pokeapi.co/api/v2/pokemon/${id}/', { json: true }, (err, res, body) => {
        if (err) { return console.log(err); }
        return `${body.id}: ${body.name}`
    });
} 

我试图在所有地方获得回报,但是我能得到任何东西,任何想法吗?

我也尝试过,用这样的承诺来做到这一点,但不起作用:

const getPokemon = (id) => {
        request(`https://pokeapi.co/api/v2/pokemon/${id}/`, { json: true }, (err, res, body) => {

            return new Promise((resolve, reject)=>{
                resolve(`${body.id}: ${body.name}`)
                if (err) {reject(err); }
            })            
        });
    } 

    getPokemon(1).then(poke => (console.log(poke)))

0 个答案:

没有答案