簡體   English   中英

從Google Cloud Storage檢索文件

[英]Retrieving file from Google Cloud Storage

在我的項目中,我需要能夠在服務器上上傳一些文件並按名稱獲取文件。 我想將它們保存在Google Cloud Storage我的提交表單如下所示

<%
    UploadOptions op = UploadOptions.Builder.withGoogleStorageBucketName("myDefaultBucket");
%>
<form action="<%= blobstoreService.createUploadUrl("/upload", op) %>" method="post" enctype="multipart/form-data">
    <input type="file" name="fileToUpload">
    <input type="submit" value="submit">
</form>

但是,在Google Cloud Storage該文件的名稱不同於我上載時的名稱(例如,我上載了file.txt ,它在存儲桶中的名稱是L2FwcGhvc3RpbmdfcHJvZC9ibG9icy9BRW5C... )。

基本上,我只需要在服務器上保存一些文件file.txt ,然后將其命名為file.txt

您可以將此表單發布到您自己的servlet中,而不是直接上傳到Cloud Storage。 然后,使用存儲桶和已提交文件的名稱創建文件名,然后將此文件保存到Cloud Storage。

private final GcsService gcsService =
GcsServiceFactory.createGcsService(RetryParams.getDefaultInstance());

GcsOutputChannel outputChannel =
gcsService.createOrReplace(GcsFilename(bucketName, uploadedFileName), GcsFileOptions.getDefaultInstance());

您可以設置文件名和文件夾,如果您通過XML-API使用直接上傳(POST)到GCS(不使用blobstore),則可以設置文件名和文件夾。

您可以在此處找到我的Python示例代碼。

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM