1

excel4node libを使用してオブジェクトからexcel docをエクスポートするNode.jsのFirebase用Cloud機能を使用します。wb.write('Excel.xlsx');後に問題があります。実際にはExcelファイルをどこかに保存してから、フロントエンドでダウンロードしてダウンロードすることができます。エクスポートFirepoint(無料)firebaseプランを使用してFirebase用のCloud機能を使用して

  1. を私はFirebaseためのクラウドストレージがある知っているが、Googleだけが知っていると、この記事によるといくつかの奇妙な理由:TypeError: firebase.storage is not a function Firebaseストレージが長いノードで使用されていない、私が実行しようとしました何

    .js。

  2. 私はGoogle Cloudストレージについても読んでいますが、これは有料サービスを介してのみです。

  3. ここにチュートリアルがあります:https://mashe.hawksey.info/2017/06/cloud-functions-for-firebase-in-google-apps-script/しかし、ここでも有料プランが必要です。

私の質問は:それはからダウンロードされるように、私は、フロントエンドのどこかにエクスポートしたExcel出力、それを保存することができますようにfirebaseとNodejsで、このエクスポートを行うための任意の空き方法はありますユーザー?

答えて

1

番号3のチュートリアルから投稿したリンクは、外部HTTPリクエストを行うため、有料プランのみが必要です。あなただけの内部ストレージを使用している場合は、この操作を行うことができます。

const path = require('path'); 
const os = require('os'); 
const fs = require('fs'); 

var bucket = admin.storage().bucket(); 

//cloud functions can only write to the temporary directory 
const tempFilePath = path.join(os.tmpdir(), "Excel.xlsx"); 

//creates and writes the file to the local temporary directory 
//and then retrieves the newly created file for uploading 
wb.write(tempFilePath, function (err, stats) { 
      if (err) { 
       console.error(err); 
      } else { 
       console.log("File written."); 
       fs.readFile(tempFilePath, function (err, data) { 
       if (err) { 
        throw err; 
       } 
       var uploadTask = bucket.upload(tempFilePath, 
       { destination: "excelFileFolder/Excel.xlsx"}); 
// Uploads the excel file to a folder called excelFileFolder in your firebase storage 
関連する問題