【问题标题】:firebase storage upload from google cloud storage java api从谷歌云存储java api上传firebase存储
【发布时间】:2017-05-06 12:08:47
【问题描述】:

我有一个 firebase 帐户,我想以编程方式将一些照片上传到 firebase 存储。为此,我使用了谷歌云 Java 存储 API。我配置权限和其他。我可以成功创建存储桶、blob。但是,当我尝试上传图片时,其大小为 0 或无法下载(未生成 URL)。我使用的代码如下;

        Storage storage = StorageOptions.newBuilder().setProjectId("firebaseId")
                .setCredentials(ServiceAccountCredentials.fromStream(new FileInputStream("jsonFileFor Authentication")))
                .build()
                .getService();
        String blobName = "a.jpg";
        BlobId blobId = BlobId.of(bucket.getName(), blobName);
        InputStream inputStream = new FileInputStream(new File("a.jpg"));
        //BlobInfo blobInfo = BlobInfo.builder(blobId).contentType("image/jpeg").build();
        BlobInfo blobInfo = BlobInfo.builder(bucket.getName(), "a.jpg").contentType("image/jpeg").build();

    try (WriteChannel writer = storage.writer(blobInfo)) {
        byte[] buffer = new byte[1024];
        int limit;
        try {
            while ((limit = inputStream.read(buffer)) >= 0) {
                writer.write(ByteBuffer.wrap(buffer, 0, limit));
            }

        } catch (Exception ex) {
            // handle exception
        }finally {
            writer.close();
        }
    }

感谢任何建议。 问候。

【问题讨论】:

    标签: java google-cloud-storage firebase-storage


    【解决方案1】:

    代码正在运行。问题与权限有关。您需要将 google 存储所有者 ID 设置为 Firebase 存储桶所有者。然后您可以写入 Firebase 存储桶。如果有人搜索从 google storage java API 编写 firebase 存储,我不会删除该帖子。

    问候。

    【讨论】:

      猜你喜欢
      • 2017-09-05
      • 1970-01-01
      • 1970-01-01
      • 2014-08-11
      • 1970-01-01
      • 2016-12-30
      • 2018-08-26
      • 2012-12-09
      • 1970-01-01
      相关资源
      最近更新 更多