87,910
社区成员
发帖
与我相关
我的任务
分享
function getAccessToken(){
var postJson = '';
var url='http://xxxxx.com/kkk';
//这里是一个异步调用
https.get(url, function(res) {
res.on('data', function (chunk) {
postData += chunk;
});
res.on('end', function(){
//这里是返回postData的值,因为是异步调用,当在return返回之前这个函数都已经运行完毕了,我怎么才能返回这个值呢?
//不想使用进程等待多少秒啥的方法,以为get请求不确定返回时间,
return postData;
});
}
const fs = require('fs');
const fileName = process.argv[2];
function readFile(fileName) {
return new Promise((resolve, reject) => {
fs.readFile(fileName, (error, data) => {
if (error) return reject(error);
return resolve(data);
});
});
};
readFile(fileName)
.then((data) => {console.log(data.toString());})
.catch(console.error);
function getAccessToken(callback){
var postJson = '';
var url='http://xxxxx.com/kkk';
//这里是一个异步调用
https.get(url, function(res) {
res.on('data', function (chunk) {
postData += chunk;
});
res.on('end', function(){
//这里是返回postData的值,因为是异步调用,当在return返回之前这个函数都已经运行完毕了,我怎么才能返回这个值呢?
//不想使用进程等待多少秒啥的方法,以为get请求不确定返回时间,
callback && callback(postData);
return postData;
});
}
function getAccessTokenCallback(res){ // 定义一个回调函数
console.log(res);
}
getAccessToken(getAccessTokenCallback);// 把上面定义的回调函数当做参数传进去,这里也可以直接写一个匿名函数