假设我有一些文件上传表单,例如文档中的文件 https://cloud.google.com/appengine/docs/java/blobstore/
如果我将文件 file.txt
保存到 blobstore,如果我不知道它是 BlobKey
,如何从中获取它。更准确地说,我想通过如下请求获取此文件: myapp.appspot.com/getfile?file_name=file.txt
并且我只想查看文件 file.txt
在此网址上。
最佳答案
如果您使用 Blobstore,则必须记住某处的 key 才能检索 Blob。
如果您使用 Blobstore 将文件存储在 Cloud Storage 中,则可以使用对象名称来访问它们,该对象名称可以是上传文件的原始名称。
如果您的文件是公开的,您可以直接访问它:
https://storage.googleapis.com/" + bucket + "/" + objectName
如果您想先在应用程序中读取它,然后返回到客户端,那么您可以使用:
String filename = "/gs/" + bucket + "/" + objectName;
BlobstoreService blobService = BlobstoreServiceFactory.getBlobstoreService();
blobService.serve(blobService.createGsBlobKey(filename), response);
关于java - 如何按名称从 BlobStore 读取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34252699/