我正在使用一种功能,我需要使用java将图像/文件上传到firebase存储,并将其作为API公开。我已经在angular 4打字稿中实现了这个功能。但是现在我需要将此方法用作Java Rest API,以便我的对等方也可以使用相同的方法而不是编写新的方法。那么有没有API或方法将图像写入firebase存储?
如果Java项目在受信任的环境(例如他们的开发计算机,您控制的服务器或云功能)中运行,则他们可以使用Firebase Admin SDK访问云存储。
有关如何入门的信息,请参阅Firebase Admin SDK documentation,然后查看Google Cloud Storage documentation for Java clients了解更多信息。具体来看看sample of uploading a file in Java:
BlobId blobId = BlobId.of("bucket", "blob_name"); BlobInfo blobInfo = BlobInfo.newBuilder(blobId).setContentType("text/plain").build(); Blob blob = storage.create(blobInfo, "Hello, Cloud Storage!".getBytes(UTF_8));
试试这个:
FirebaseOptions options = FirebaseOptions.builder()
.setCredentials(credential)
.setDatabaseUrl(projectUrl)
.setStorageBucket("YOUR BUCKET LINK")
.build();
FirebaseApp fireApp = FirebaseApp.initializeApp(options);
StorageClient storageClient = StorageClient.getInstance(fireApp);
InputStream testFile = new FileInputStream("YOUR FILE PATH");
String blobString = "NEW_FOLDER/" + "FILE_NAME.EXT";
storageClient.bucket().create(blobString, testFile , Bucket.BlobWriteOption.userProject("YOUR PROJECT ID"));