简体   繁体   English

使用Google Firebase云功能下载或查看文件

[英]Download or view file using google firebase cloud function

What I'm trying to do: 我正在尝试做的是:

  1. Generate invoice using a third party lib. 使用第三方库生成发票。
  2. Download/View invoice 下载/查看发票

My code 我的密码

let createPdf = functions.https.onRequest(async (request, response) => {

    // more code here 

    if (download == 'true') {
        return response.status(200).download(__dirname + "/docs/" + newFileName, newFileName, (err) => {
            if (err) {
                console.log(err.message);
            } else {
                console.log("Downloaded:", filename)
            }
        })
    } else {
        var options = {
            root: __dirname,
            dotfiles: 'deny',
            headers: {
                'x-timestamp': Date.now(),
                'x-sent': true
            }
        };

        return response.status(200).sendFile("/docs/" + newFileName, options, (err) => {
            if (err) {
                console.log(err);
            } else {
                console.log('Sent:', filename);
            }
        });
    }
});

The error 错误

{
  "error": {
    "code": 500,
    "status": "INTERNAL",
    "message": "function crashed",
    "errors": [
      "socket hang up"
    ]
  }
}

Note: When I return a simple string instead of the file it works. 注意:当我返回一个简单的字符串而不是文件时,它将起作用。

Use express request and response objects to send a file. 使用快速请求和响应对象发送文件。

Read this documentation: using_express_request_and_response_objects 阅读此文档: using_express_request_and_response_objects

And don't forget to use absolute path when using sendFile 并且在使用sendFile时不要忘记使用绝对路径

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Firebase 谷歌云功能 - 下载文件 - 未找到 - Firebase google cloud functions - Download File - Not Found Firebase 云函数服务本地文件以供下载 - Firebase Cloud Function Serving Local File for Download 我无法从 Google Cloud Console(使用 Firebase)查看我的 Cloud Function 的源代码 - I can't view the source code of my Cloud Function from Google Cloud Console( Firebase using) 使用 JWT 和 Google Cloud 函数对 Realm Cloud 进行 Firebase 身份验证 - Firebase Authentication for Realm Cloud using JWT and a Google Cloud Function 使用下载 url 和 Cloud Functions 从 Firebase 存储中删除文件 - Delete a file from firebase storage using download url with Cloud Functions 使用Node fs.writeFile将文件从Google Cloud Function写入Firebase存储吗? - Write a file from a Google Cloud Function to Firebase Storage using Node fs.writeFile? 使用 Google Cloud Function 将数据从 firebase firestore 导出到 MeiliSearch - Exporting data from firebase firestore to MeiliSearch using Google Cloud Function Firebase的云功能图像下载功能错误 - Cloud Functions for Firebase Image download function Error firebase Google Cloud Storage下载URL的文件夹名称变为文件名 - firebase Google Cloud storage download URL has folder name which becomes file name 用于文件上传的 Firebase 云功能 - Firebase cloud function for file upload
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM