我想从客户端JavaScript代码直接上传到Google Cloud Storage存储桶,尽管该存储桶不应是公开可写的。服务器端代码是Node.js。过去,通过为服务器上的客户端生成临时授权,我能够直接上传到Amazon S3。将文件上传到受写保护的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}`)
}
})
为了上载文件,向获得的签名URL发出PUT请求。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句