我发送一个http的post请求,得到回来的值,然后callback。想把这个文件require到其他的请求下,不知道怎么拿出来存好;`
var req= http.request(options,function(res){
var size=0;
var chunks=[];
res.on('data', function (chunk) {
size += chunk.length;
chunks.push(chunk);
});
res.on('end',function(){
var datas = Buffer.concat(chunks,size);
//console.log(datas)
var htmldata = JSON.parse(datas.toString());
callback1(htmldata);
})
})
req.write(data);
req.end();
}
module.exports=request;
//其他请求
var king=require('./yinhttp.js')//引入;`
var arr=[];
king(function(v){
//获取值,push进数组;
})
我试了好久,值都没传到外面
我找到原因了,是因为异步操作了,我定义好了数组,但是运行到king(function(v){})时,因为异步,已经运行下面的代码了,导致我打印出问题了
这是res支持流的原因和写法, 所以才会拿不到