【问题标题】:How to Download This Node.js Result to Browser?如何将此 Node.js 结果下载到浏览器?
【发布时间】:2020-08-28 02:29:00
【问题描述】:

这是我的代码:

function exportFiles(auth) {
  const drive = google.drive({ version: "v3", auth });
  app.set('drive', drive);
  var fileId = '1qupvie1LqNdLj-1TZNu3x6-4bT411C4F2YYGSfpc7yk';
  var dest = fs.createWriteStream('./src/test.txt');

  drive.files.export({
    fileId: fileId, mimeType: 'text/plain'}, 
    {responseType: 'stream'},
    function(err, response){
    if(err)return console.log(err);
    response.data.on('error', err => {
        console.log(err);
    }).on('end', ()=>{
        console.log("sent file.")
    })
    .pipe(dest);
});
}

这是一个更大的应用程序的一部分,它允许用户将此功能的结果下载到他们的下载文件夹中。这可以很好地写入指定的目的地,但是我如何在 React 的前端调用它呢?在前端制作下载按钮以返回此结果的最佳方法是什么?

【问题讨论】:

    标签: javascript node.js reactjs download


    【解决方案1】:

    您使用任何网络服务器提供文件,并且由于您使用的是 node.js,因此 express 是一个不错的选择。您将下载的内容放入公共目录。 http://expressjs.com/

    在有或没有框架的客户端上,您可以向用户显示一个下载链接,带有一个下载链接。该标签应包含download 属性,如下所述:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a

    【讨论】:

      【解决方案2】:
      1. 使用 --inspect 标志运行节点:node --inspect fileName.js

      2. 它会将您重定向到 chrome://inspect

      3. 单击 Open dedicated DevTools for Node 链接(inspect)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-12-11
        • 1970-01-01
        • 2013-08-13
        • 1970-01-01
        • 2012-07-18
        • 1970-01-01
        • 1970-01-01
        • 2019-08-10
        相关资源
        最近更新 更多