Http 请求文档头

Http request document head

本文关键字:文档 请求 Http      更新时间:2023-09-26

我需要获取文档标题。

所以我尝试发送请求,并发送响应 html 以获取标题。

示例(通过 nodeJS 模块 request):

request.get("http://www.google.com", function(err, res, body) {
  var title = body.match(/<title>(.*?)</title>/g)[1];
})

但是当文档特别大时,请求很慢。

有没有办法快速获取文档标题?请指教。谢谢。

请求可以在收到解压缩的数据流时为您提供: http://github.com/request/request#examples(第二个示例)

您可以继续将接收到的数据附加到缓冲区中,并检查它是否具有您想要的内容(" </title> ")。获得它后,您可以获取标题并忽略流中的其余缓冲区。

var request = require('request');
var buffer = '';
var flag = 0;
request({
        method: 'GET',
        uri: 'http://www.google.com',
        gzip: true
    }).on('data', function(data) {
        if (buffer.indexOf('</title>') == -1)
            buffer += data;
        else done();
    });
function done() {
    if (flag) return;
    flag++;
    var title = buffer.match(/<title>(.*?)<'/title>/)[1];
    console.log(title);
}