在GET请求中表达WriteFile而不阻止响应?

时间:2016-08-29 14:22:09

标签: javascript node.js http express fs

我有一个请求需要在应用程序初始化时进行,其中部分JSON响应被解析为JS并且必须写入文件 - 其余的响应也需要由前端接收。目前我的设置如下:

function getAds(req, res) {
  console.log('GET Advertisements');
  let url = 'http://example.com/json/advertisements/v5/all';
  request(url, (err, response, body) => {
    let advertisements = JSON.parse(body);
    let script = advertisements.header;
    fs.writeFile('client/ads/dfpAds.js', script, function(err) {
      if (err) {
        console.error(err);
      }
    });
    res.send(advertisements);
  });
}

这成功写入了JavaScript文件,但它没有将响应发送到我的前端,而也阻止了我在其他控制器中发出的所有其他HTTP请求。

有可能这样做吗?我是否需要将处理WriteFile的请求与将要发送到前端的另一个请求分开?

我尝试了各种组合但是我永远不会让WriteFile不阻止所有其他HTTP请求。非常感谢任何帮助。

0 个答案:

没有答案