javascript - nodejs res.send()回调函数中的数据
PHPz
PHPz 2017-04-11 12:11:23
0
1
564

a()函数接受一个url,能够获取html源码
b()函数接受返回的源码,然后处理加工,返回一个obj
所以,b()直接写在a()函数的res.on('end',function(){return b(html)})里面

所以实际的代码是这样的

//爬取到的html源码
var obj=null

//b函数处理爬取的源码然后处理返回一个结果
var newHtml=''
app.post('/',function(req,res){
    var obj=a(req.body.url)
    
    res.send()    
    })
    })

那我怎么才能拿到这个obj,res.send()啊??

如果可以的话,能说一下原理是什么吗

PHPz
PHPz

学习是最好的投资!

全部回复(1)
阿神

这里是异步编程,所以在end函数里返回处理的结果

//爬取到的html源码
var html = ''

//b函数处理爬取的源码然后处理返回一个结果
var newHtml = ''
app.post('/', function(req, resp) {
    http.get(req.body.url, function(res) {
        //巴拉巴拉。。这里获取了整个html的源码 html
        res.on('end', function() {
            //对爬取的结果进行处理
            var newHtml = b(html)
            resp.send(newHtml)//等处理完了再发送
        })

        //res.send(newHtml)//异步,这里发送时,newHTML = ''
    })
})
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!