Laravel中的Cloud Firestore存储上载媒体路径访问问题

问题描述

我正在尝试访问在云存储分区文件夹中上传的图像,pdf和其他mime文件。 它易于上传,但无法访问其路径并无法下载Uri路径。 正如我已经通过单击媒体文件检查的那样,它的显示选项可以生成令牌以从我端上的Web上载图像,但是如果从应用程序上载相同的图像,则可以使用为其生成的访问令牌进行访问。 现在,我已经通过传递参数来创建了自定义路径,而这是我无法访问的。 请让我知道是否有其他方法可以在laravel中上传和访问文件下载uri。 任何有用的建议都是可取的。

代码

use Kreait\Firebase;
use Kreait\Firebase\Factory;
use Kreait\Firebase\ServiceAccount;
use Kreait\Firebase\Database;
use Google\Cloud\Firestore\FirestoreClient;
use Google\Cloud\Storage\StorageClient;

$serviceAccount =__DIR__.config('firebase.credentials.file');
$storage = new StorageClient([
'keyFilePath' => $serviceAccount,'projectId' => '{project-id}',]);
$extension = $request->file('file')->getClientOriginalExtension();
$dir = public_path('/firestore/uploads/');
$filename = uniqid() . '_' . time() . '.' . $extension; 
$request->file('file')->move($dir,$filename);
$source = $request->file('file');
$bucketName = '{bucket-name}';
$uploadedfile = fopen($dir.$filename,'r');
$bucket = $storage->bucket($bucketName);
$uploadedobject = $bucket
->upload($uploadedfile,[
'name' => 'folderInFirebase/'.$filename,'alt' => 'media','predefinedAcl' => 'publicRead'
]);
unlink($dir . $filename);
$encode = urlencode($filename);
$downloadUrl = 'https://firebasestorage.googleapis.com/v0/b/{bucket-name}/o/{folderInFirebase}%2F'.$encode.'%7D?alt=media';  

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)