Node.JS发送http请求批量检查文件中的网页地址、服务是否有效可用
在node.js中只需要几行代码就可以发送http请求,通过检查statusCode可以判断该网址服务是否有效。
如下代码:
varhttp=require('http')
varcheckExists=function(urlPath,cb){
varoptions={host:'192.168.2.101',port:8064,path:encodeURI(urlPath)}
varreq=http.request(options,function(r){
cb&&cb(r.statusCode==200);
})
req.end()
}
以上代码检查相对网址是否可用,需手动修改服务器地址和端口,使用以下代码可以检查完整地址的可用性。
varhttp=require('http')
varurl=require('url')
varcheckUrlExists=function(Url,cb){
varoptions={
//method:'HEAD',
host:url.parse(Url).host,
port:80,
path:url.parse(Url).pathname
};
varreq=http.request(options,function(r){
cb&&cb(r.statusCode==200);
});
req.end();
}
搭配fs模块,可以指解析文件中的地址是否可用,完整代码如下:
varhttp=require('http')
varurl=require('url')
varfs=require('fs')
/*
检查完整网址是否可用
*/
varcheckUrlExists=function(Url,cb){
varoptions={
//method:'HEAD',
host:url.parse(Url).host,
port:80,
path:url.parse(Url).pathname
};
varreq=http.request(options,function(r){
cb&&cb(r.statusCode==200);
});
req.end();
}
/*
检查相对网址是否可用,需修改服务器地址和端口
*/
varcheckExists=function(urlPath,cb){
varoptions={host:'192.168.2.101',port:8064,path:encodeURI(urlPath)}
varreq=http.request(options,function(r){
cb&&cb(r.statusCode==200);
})
req.end()
}
varcheckFile=function(filePath){
fs.readFile(filePath,function(err,data){
if(err){
console.log(err)
return
}
varlines=data.toString().split(/[\r\n]+/)
varcurr=0
varurlPath
varcheckNext=function(exist){
if(curr>lines.length-1){
console.log('end')
return
}
//console.log(curr,'exist',exist,urlPath)
if(!exist){
console.log(curr,'exist',exist,urlPath)
}
if(curr>=lines.lines){
console.log('end')
return
}
urlPath=lines[curr++]
checkExists(urlPath,checkNext)
}
checkNext()
})
}
checkFile('./visit.csv')
总结
以上所述是小编给大家介绍的Node.JS发送http请求批量检查文件中的网页地址、服务是否有效可用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。