1
我想直接上傳到我的客戶端JavaScript代碼中的Google Cloud Storage存儲桶,但存儲桶不應公開寫入。服務器端代碼是Node.js.在過去,我可以通過爲服務器上的客戶端生成臨時授權,直接上傳到Amazon S3。將文件上傳到寫保護的Google雲存儲存儲分區的過程如何,即需要授權?如何從服務器上的客戶端JavaScript上載到Google Cloud Storage?
我想直接上傳到我的客戶端JavaScript代碼中的Google Cloud Storage存儲桶,但存儲桶不應公開寫入。服務器端代碼是Node.js.在過去,我可以通過爲服務器上的客戶端生成臨時授權,直接上傳到Amazon S3。將文件上傳到寫保護的Google雲存儲存儲分區的過程如何,即需要授權?如何從服務器上的客戶端JavaScript上載到Google Cloud Storage?
我發現我可以使用getSignedUrl,這是爲了讓某些臨時訪問(例如寫)到一個文件:
bucket = gcs.bucket('aBucket')
bucket.file('aFile').getSignedUrl({
action: 'write',
expires: moment.utc().add(1, 'days').format(),
}, (error, signedUrl) => {
if (error == null) {
console.log(`Signed URL is ${signedUrl}`)
}
})
爲了上傳文件,發出PUT請求獲得的簽名URL。