gpt4 book ai didi

google-app-engine - 谷歌云存储检查对象是否存在(App Engine Java)

转载 作者:太空宇宙 更新时间:2023-11-03 15:23:05 25 4
gpt4 key购买 nike

我的 AppEngine 项目有一个 API 方法,可以将可恢复的 URL 发送到 Android 客户端,然后使用该可恢复的 URL 上传图像。

我有另一种创建并返回签名 URL 的 API 方法。在签名 URL 中,您必须指定 Google Cloud Storage 存储桶和对象名称。但是,该对象可能不存在,在这种情况下,签名的 URL 当然将不起作用。

在发布签名 URL 之前,如何快速检查我的 App Engine 后端中是否存在对象(在存储桶中)?

编辑:我的 App Engine 项目是 Cloud Endpoints 项目。

最佳答案

您可以调用getMetadata 来检查对象是否存在而无需下载它。

GcsService fileService = GcsServiceFactory.createGcsService();
GcsFilename file = new GcsFilename(bucket, object);
fileService.getMetadata(file);

或者,您可以列出存储桶中的所有对象或存储桶中以指定前缀(如有必要,可以等于对象名称)开头的所有对象。

更新:

这是我将 uploadURL 发送给我的客户的方式:

@Override
public String getUploadUrl() throws LoginException, VersionException {
// Verify that call is from a registered user and with proper headers

BlobstoreService blobstoreService = BlobstoreServiceFactory.getBlobstoreService();
String callbackUrl = "/blob";
return blobstoreService.createUploadUrl(callbackUrl,
UploadOptions.Builder.withGoogleStorageBucketName("myBucket));
}

关于google-app-engine - 谷歌云存储检查对象是否存在(App Engine Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36414817/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com