0

这是我的代码,在 wpt.runtest 函数中,我正在点击一些 url 并获取 url 作为响应,现在我将在我的请求函数中使用这个 url,但我需要等待一段时间,因为数据可用需要一些时间将在请求模块中使用的 url。

wpt.runTest('http://some url ',function(err, data) {
        //console.log("hello -->",err || data);

        data_url = data.data.summaryCSV;
        console.log(data_url);
        console.log('-----------');
        console.log(data_url);
        console.log('-----------');

        request({uri:data_url,method:'GET'}, function (error, response,body)  {
            console.log('----@@@@@@----');
            console.log(response.headers);
            console.log('----@@@@@@----');
            //console.log(response);
            if (error) {
                console.log('got an error' + error);
            }
            //console.log(response);
            //console.log(body);
            var data = body;
            console.log('here is the body' + body);

我想要的是,在我的请求函数执行之前应该有一个时间间隔或暂停,我怎么能做到这一点

4

1 回答 1

0

以上问题可以通过

使用设置超时

wpt.runTest('http://some url ',function(err, data) {
        //console.log("hello -->",err || data);

        data_url = data.data.summaryCSV;
        console.log(data_url);
        console.log('-----------');
        console.log(data_url);
        console.log('-----------');
        var delay = 5000;
        settimeout(function(){
             request({uri:data_url,method:'GET'}, function (error, response,body){
              // handle error and response
             }
        }, delay);
});

使用 Cron

如果您对此特定问题有一些扩展案例,这将非常有帮助。例如,您需要在不同时间跟踪资源,比如每小时或每天之后。如果您预计会出现这种情况,那么考虑 Cron 会有所帮助。

cron 执行步骤:

  1. 使用cron 模式注册一个 cron 。
  2. 启动 cron。
  3. 当模式评估为真时,您提供的函数将被执行。将您的实现(使用库请求资源request)放入提供的函数中。

nodejs 中 cron 的帮助程序库是Lib1Lib2

例子lib1 , lib2

于 2015-11-03T08:16:24.173 回答