试图在Google Storage中下载文件返回json

时间:2017-02-23 12:54:03

标签: java google-cloud-storage

我正试图从Google存储下载文件。 如果我访问Google存储页面,我可以正确下载该文件。

但是如果我尝试使用api下载,它会返回一个json对象:

 {
    "kind": "storage#object",
    "id": "storage-key/file/id",
    "selfLink": "link",
    "name": "name.xlsx",
    "bucket": "bucketName",
    "generation": "35452344234",
    "metageneration": "1",
    "contentType": "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
    "timeCreated": "2017-02-23T12:35:04.258Z",
    "updated": "2017-02-23T12:35:04.258Z",
    "storageClass": "STANDARD",
    "timeStorageClassUpdated": "2017-02-23T12:35:04.258Z",
    "size": "4679",
    "md5Hash": "k3A546723454afhjgrfKuZw==",
    "mediaLink": "medialink",
    "crc32c": "U2ajDQ==",
    "etag": "DMiAt62dbtICAAE="
}

我基本上使用:

import com.google.api.services.storage.Storage;
storage.objects().get(bucketName, fileName).executeAsInputStream();

昨天它起作用了:。 你有什么想法,为什么它返回一个json?

1 个答案:

答案 0 :(得分:1)

executeAsInputStream()retrieves the object's metadata(作为流)。

executeMediaAsInputStream()检索对象的内容(作为流)。

此外,您可能有兴趣切换到新的google-cloud client library for Java,这会删除您正在使用的客户端的一些更令人困惑的位。这是一个example of how to use it for downloading