2017-09-03 7 views
0

私はExpressJSについて学んでいます。ノードでFirebaseストレージに画像をアップロードしようとしています。ExpressjからGoogle Cloud Storage/Firebaseストレージに画像をアップデートする方法

私はエラーfirebase.storage().ref() is not a functionを受け取りました。それについて調べると、Topicが見つかり、FirebaseストレージがNodeでサポートされていないことが判明しました。

質問:私はファイルオブジェクトをHTML入力ファイルで受け取っていますが、Google Cloud Storageにアップロードする方法はわかりません。私はそれをどのようにすることができますか?

私が見つけた解決策はすべてファイルパス名を使用してアップロードしていましたが、ファイルオブジェクト(ファイル)をアップロードするのが好きです。

マイコード:

req.pipe(req.busboy); 
req.busboy.on('file', function (fieldname, file, filename) { 
    console.log("Uploading: " + filename); 

    // Trying GCS 
    var remoteReadStream = bucket.file('giraffe.jpg').createReadStream(); 
    console.log(remoteReadStream); 
    //var localWriteStream = 
    fs.createWriteStream('/photos/zoo/giraffe.jpg'); 
//remoteReadStream.pipe(localWriteStream); 

// Trying Firebase 
//storageRef.put(file).then(function(snapshot) { 
// console.log('Uploaded a blob or file!'); 
//}); 
}); 

おかげで今まで。

+0

...現在、非常に混乱しています:https://cloud.google.com/storage/docs/json_api/v1/how-tos/upload – voscausa

+1

あなたが使用することができますGoogle Cloud StorageノードSDK。 https://github.com/GoogleCloudPlatform/google-cloud-node#cloud-storage-ga –

答えて

0

このトピックを投稿する前に、これらの文書を見ました。 home/pedro/Downloads/outros icones/1532.png このcodeを使用すると、次のエラーが表示されます。エラーを自動認識できませんでしたが、OAuth2.0のkeyfile.jsonをダウンロードして設定しました。

var x = '/home/pedro/Downloads/outros icones/1532.png' 
var localReadStream = fs.createReadStream(x); 
var remoteWriteStream = bucket.file('zebra.jpg').createWriteStream(); 
localReadStream.pipe(remoteWriteStream); 

変数bucketは立体配置のバケット基準である(これらのドキュメンテーションの全ての開始)とfsはFの必要があります。

私はあなたがここにオプションを見つけることができ

関連する問題