Node.js nodejs异步函数返回未定义
我不熟悉nodejs和异步结构。我想调用FacebookGraphAPI,并为此调用创建了一个函数,我想返回响应 所以我的函数是这样的:Node.js nodejs异步函数返回未定义,node.js,express,Node.js,Express,我不熟悉nodejs和异步结构。我想调用FacebookGraphAPI,并为此调用创建了一个函数,我想返回响应 所以我的函数是这样的: exports.getME = async (access_token) => { axios({ method: 'get', url: 'https://graph.facebook.com/v10.0/me', params: { access_token : acces
exports.getME = async (access_token) => {
axios({
method: 'get',
url: 'https://graph.facebook.com/v10.0/me',
params: {
access_token : access_token
}
}).then(result => {
return (result)
})
.catch(err => {
console.log(err)
return err
})
}
const CommonAPICalls = require('./commonAPIcalls')
router.post('/', async (req,res,next)=>{
CommonAPICalls.getME(req.body.access_token).then(response => console.log(response))
.catch(err => console.log(err))
});
我这样称呼这个函数:
exports.getME = async (access_token) => {
axios({
method: 'get',
url: 'https://graph.facebook.com/v10.0/me',
params: {
access_token : access_token
}
}).then(result => {
return (result)
})
.catch(err => {
console.log(err)
return err
})
}
const CommonAPICalls = require('./commonAPIcalls')
router.post('/', async (req,res,next)=>{
CommonAPICalls.getME(req.body.access_token).then(response => console.log(response))
.catch(err => console.log(err))
});
我试图解决这个问题,但我做不到。我如何做到这一点?如果函数不等待任何东西,那么使其异步是毫无意义的。我还建议不要在同一个函数中混合使用async/await和.then。基本上,您不会从函数返回承诺链(或任何其他内容)。请尝试在
axios({…