2017-07-25 44 views
0

當我從我的node.js應用程序上載圖像時,由於公共鏈接可用,因此圖像會公開上傳。 我要上傳圖片私下如何將Google Cloud Storage設置爲「公開共享」,並顯示文件名前面的複選框

const storage = Storage({ 
    projectId: config["googleProjectID"] 
}); 

for (var key in CLOUD_BUCKET){ 
    bucketReference[key] = storage.bucket(CLOUD_BUCKET[key]); 
} 
const gcsname = "your."+extension; 
if(bucketReference[tag]){ 
    file = bucketReference[tag].file(gcsname); 
    } 

這與上傳的BaseURL/BUCKET_NAME/your.jpeg但公共鏈路可用,任何人都可以通過URL粘貼和Gmail中看到它的圖像。

我想在上傳時帶上一個複選框而不是公共鏈接(就像我們手動上傳存儲時發生的那樣)。

請幫忙解決這個問題!

回答

0

得到了答案!

const stream = file.createWriteStream({ 
    metadata: { 
     contentType: "image/jpeg", 
    }, 
    predefinedAcl: "bucketOwnerRead"//shows no checkbox since project owner has reader access and no one accept object owner can see images 
    predefinedAcl: "bucketOwnerFullControl" //shows a checkbox and only shows the image to those who are project owners 
    }); 

「predefinedAcl」是關鍵。 它將圖片上傳爲公共或私人圖片。

這隻允許項目團隊所有者在登錄後進入公開或查看隱身網頁的網址。

相關問題