我今天开始在Node.js
开发,我认为应用程序执行多个请求以了解服务器的正常运行时间。我需要每个请求完成该功能再次执行作为while循环。
是否可以在Node.js中执行此操作?
我的基本代码
var http = require('http');
var request = require('request');
request({
url: "http://www.google.com",
method: "GET",
timeout: 10000,
followRedirect: true,
maxRedirects: 10
},function(error, response, body){
if(!error && response.statusCode == 200){
console.log('sucess!');
}else{
console.log('error' + response.statusCode);
}
});
PS:对不起,如果这是一个愚蠢的问题或重复
答案 0 :(得分:19)
JavaScript具有setInterval
功能,同样在NodeJS中。您可以将提供的函数包装到setInterval
循环中。
setInterval
的参数是(callback, time)
,其中time
以毫秒表示......所以让我们做一些数学运算......
1s = 1000ms
和1m = 60s
,所以60 * 1000 = 60000
var requestLoop = setInterval(function(){
request({
url: "http://www.google.com",
method: "GET",
timeout: 10000,
followRedirect: true,
maxRedirects: 10
},function(error, response, body){
if(!error && response.statusCode == 200){
console.log('sucess!');
}else{
console.log('error' + response.statusCode);
}
});
}, 60000);
// If you ever want to stop it... clearInterval(requestLoop)