我已经实现了以下代码,用于将Firebase存储文件下载到内存中。因此,下一步是我想访问该文件。在这种情况下,我如何才能做到这一点?
//Download to memory
public void downloadToMemory(StorageReference sRefChild, String selectedFile)
{
final long ONE_MEGABYTE = 1024 * 1024 *5;
sRefChild.getBytes(ONE_MEGABYTE).addOnSuccessListener(new OnSuccessListener<byte[]>() {
@Override
public void onSuccess(byte[] bytes) {
System.out.println("On success!");
}
}).addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception exception) {
// Handle any errors
System.out.println("Handle failure...");
}
});
您想如何访问该文件?默认情况下,您可以使用新的ByteArrayOutputStream()作为存储。https://stackoverflow.com/a/17595282/6916890
我知道在谷歌云存储中,你可以使用签名的URL,这是有时间限制的(还是不做真正的授权)。但是我在Firebase存储文档中没有看到任何关于的内容。我在关于Firebase存储的文章中看到过它,但从未直接在Firebase的文档中看到过。 据我所知,没有办法对访问Firebase存储文件进行真正的用户授权。请告诉我我错了。
我目前有问题下载到函数tmp dir下面是我的代码。函数返回
以下是场景: 当我从Firebase存储访问文件时: 我从存储桶(.html、.png、.zip等)获取文件(小,但不超过2MB)。 将文件存储在我本地存储中,这样应用程序就不需要再次下载它,从而消耗服务器的带宽。 每次应用程序需要时从本地存储中使用它。 当我从Firebase宿主访问文件时: null 主持的优点:会更快。链接 PS: 1。我关心的是带宽而不是安全性。
我可以使用firebase-admin通过nodejs将一个文件上传到我的firebase存储桶,但当我进入firebase UI时,我无法打开该文件。我注意到,通过firebase UI上传的文件将自动生成访问令牌,但对于通过NodeJS上传的文件没有。 我已经尝试了几种方法,比如用DownloadToken设置元数据,并在上传后将文件公开。没有一个起作用。 我如何通过API调用生成访问令牌,而
根据我的理解, free()用于释放之前使用malloc分配的内存。 在我下面的片段中,我释放了我分配的内存。但是即使释放后我也能够访问指针?这怎么可能? free如何在内部工作?
我试图获得这样的下载网址,但它没有得到正确的网址。我是Firebase的初学者,怎么做呢?