[英]Setting file name during upload to Cloud Storage
我有一個應用程序引擎項目,該項目用於通過Blobstore API將文件從我的Android設備上傳到Google Cloud Storage。
public class BlobUrlGet extends HttpServlet {
BlobstoreService blServ = BlobstoreServiceFactory.getBlobstoreService();
public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws IOException {
UploadOptions uploadOptions = UploadOptions.Builder.withGoogleStorageBucketName("abc123-974.appspot.com");
String blobUploadUrl = blServ.createUploadUrl("/on_upload_success", uploadOptions);
resp.setStatus(HttpServletResponse.SC_OK);
resp.setContentType("text/plain");
PrintWriter out = resp.getWriter();
out.print(blobUploadUrl);
}
}
當我拉起Cloud Storage控制台時,上傳的文件會出現一個冗長的名稱,我認為這只是Cloud Storage密鑰。
Cloud Storage API或Blobstore中是否有一種方法可以讓您在上傳期間設置文件名? 如果沒有,通常如何進行?
我不知道從Blobstore Api自定義Blob名稱的任何方法,但是使用Cloud Storage API,您可以執行以下操作:
GcsFilename gcsFileName = new GcsFilename(bucketName, fileName)
GcsOutputChannel outputChannel = GcsServiceFactory.createGcsService().createOrReplace(
gcsFileName,
new GcsFileOptions.Builder().acl("project-private").build()
);
OutputStream outputStream = new BufferedOutputStream(Channels.newOutputStream(outputChannel));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.