【发布时间】:2017-11-25 11:27:40
【问题描述】:
我想运行请求 api 端点的 gulp 任务并观察响应的变化,在检测到变化后,gulp 将运行build 任务。
为了实现它,我创建了一个任务来监视带有请求响应正文的文件:
gulp.task('watch-response', function () {
gulp.watch('response_file', function() {
gulp.start('build');
});
});
还有一项运行 api 请求的任务,将响应正文解析为 json 并将其保存在文件 response_file 中。
request = require('request'),
fs = require('fs');
gulp.task('api_request', function () {
request('www.api.com/endpoint', function(error, response, body) {
var hash = JSON.parse(body).hash;
fs.writeFileSync('response_file', hash);
});
});
这里的问题是我想在循环中运行api_request任务有一些延迟,所以会不断地请求api。我试图在 while(true) 循环中运行它,但它出错了。
【问题讨论】: