我想封装token的方法,这样调用为何不能正确返回?
app.js
app.use('/getUserInfo',function(req,res,next){
console.log("进入getUserInfo")
utils.getToken(appid,appsecret)
})
utils.js
utils.getToken=function(appid,appsecret){
console.log("我是utils里面的")
let tokenUrl = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" + appid + "&secret=" + appsecret;
let jsonResult=''
return function(){
request(tokenUrl,(err,response,body)=>{
let jsonResult = JSON.parse(body);
return jsonResult
})
}
}
我想调用getUserInfo获取用户信息,如何改?
怪我咯2017-05-18 10:50:32
node是异步的,直接return可以的话,还要async/await 做什么?
也可以直接用回调:
app.use('/getUserInfo',function(req,res,next){
console.log("进入getUserInfo")
utils.getToken(appid,appsecret,function(res){
console.log(res);
})
})
........................
utils.getToken=function(appid,appsecret,callback){
console.log("我是utils里面的")
let tokenUrl = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" + appid + "&secret=" + appsecret;
request(tokenUrl,(err,response,body)=>{
let jsonResult = JSON.parse(body);
callback(sonResult);
})
}