2016-05-13 16 views
1

クライアントサイドのJavaScriptコードからGoogle Cloud Storageバケットに直接アップロードしたいと思いますが、バケットは公開してはいけません。サーバー側コードはNode.jsです。以前は、サーバー上のクライアントの一時的な承認を生成することによって、Amazon S3に直接アップロードすることができました。書き込み保護されたGoogle Cloud Storageバケットにファイルをアップロードする手順、つまり承認が必要な手順は何ですか。クライアントサイドJavaScriptからサーバー上のノードでGoogle Cloud Storageにアップロードするにはどうすればよいですか?

答えて

1

私は(書き込み用など)一定の一時的なアクセスを許可すると想定される、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。

関連する問題