1

我试图删除我的应用对Parse后端的依赖关系,因为它将被停用。将分析文件迁移到Google云端存储

我已经开始将所有内容传输到Google App Engine上,并且该应用程序现在可以正常工作。

但是,我仍然有一些文件托管在解析从应用程序进行BETA测试。

我希望将这些文件(.mp4和.png)移到Google云端存储。

我知道如何上传/提供文件到云端存储。

我不知道如何上传文件到云存储从一个URL托管在不同的位置,虽然。

HTTPRequest request = new HTTPRequest(new URL(uploadURL), HTTPMethod.POST); 
    request.setHeader(new HTTPHeader("Content-type", "multipart/form-data")); 

    byte[] data = ?? how do I convert URL to byte array 

    request.setPayload(data); 

    HTTPResponse response = URLFetchServiceFactory.getURLFetchService().fetch(request); 

有没有人有在云从URL上传文件到GCS而不是他们的设备上的实际文件的成功?


我不能使用使用Cloud Storage Transfer Service在Developers控制台,以从网址传输文件作为这个解决方案是手动的解决方案。

我需要一个解决方案,允许我浏览大型列表(位于解析数据库),并在将文件上传到云存储后更新App Engine数据存储中的条目。

回答

0

如果不使用cloud storage transfer service,我必须从url下载文件以将其上传到GCS,并更新数据存储中的实体。

所以我可以去2种方式之一。

1)使用Google Compute Engine启动虚拟机来下载文件,将其重新上传到Google Cloud Storage,并更新数据存储中实体的文件位置。

2)写出iPhone模拟器来处理下载,上传一些代码,并在数据存储更新的实体。

选项2是更便宜的选项(可能更慢),但都应该工作。

1

你可以使用在开发者控制台的云存储传输服务来从URL中传输文件:

https://cloud.google.com/storage/transfer/#urls

+0

但是,我看到这个,看起来很漂亮。您必须创建一个散列并计算每个条目的字节数。我必须在传输文件后使用新的云存储名称更新数据存储中的条目,如果手动输入了每个条目,则需要更长的时间 –

0

您可以使用像这样使用一个URL的内容流进GCS文件在GCS Java Client(你可以做到这一点本地避免使用GAE资源):

GcsFilename fileName = new GcsFilename("MyBucket", "MyObject"); 
URL url = new URL("http://example.com/path/to/file"); 

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

try { 
    GcsOutputChannel outputChannel = gcsService.createOrReplace(fileName, GcsFileOptions.getDefaultInstance()); 
    ObjectOutputStream outputStream = new ObjectOutputStream(Channels.newOutputStream(outputChannel)); 
    InputStream inputStream = url.openStream(); 
    byte[] buffer = new byte[4096]; // Use any buffer size desired 

    int bytesRead; 
    while ((bytesRead = inputStream.read(buffer)) > 0) { 
    outputStream.write(buffer, 0, bytesRead); 
    } 
    outputStream.close(); 
} 
catch (IOException e) { 
    e.printStackTrace(); 
} 

这是未经测试的,所以可能需要一些改变。

+0

对我而言没有效果。发布了解释原因的答案 –

相关问题