Php 使用laravel中自动生成的访问令牌将图像上载到firebase bucket
我按照此步骤将图像上载到firebase存储,图像上载到存储中。但是,要查看图像,我必须在存储器中的图像内手动生成访问令牌。我希望有没有办法从我的代码中自动生成特定图像的访问令牌 下面是我上传图片的代码Php 使用laravel中自动生成的访问令牌将图像上载到firebase bucket,php,laravel,firebase,google-cloud-storage,firebase-storage,Php,Laravel,Firebase,Google Cloud Storage,Firebase Storage,我按照此步骤将图像上载到firebase存储,图像上载到存储中。但是,要查看图像,我必须在存储器中的图像内手动生成访问令牌。我希望有没有办法从我的代码中自动生成特定图像的访问令牌 下面是我上传图片的代码 $factory = (new Factory)->withServiceAccount(__DIR__.'/myfirebase.json'); $storage = $factory->createStorage(); $image = $request->file('im
$factory = (new Factory)->withServiceAccount(__DIR__.'/myfirebase.json');
$storage = $factory->createStorage();
$image = $request->file('image');
$localfolder = public_path('firebase-temp-uploads') .'/';
if (!file_exists($localfolder)) {
mkdir($localfolder, 0777, true);
}
$extension = $image->getClientOriginalExtension();
$file = $shopId. '.' . $extension;
if ($image->move($localfolder, $file)) {
$uploadedfile = fopen($localfolder.$file, 'r');
$storage->getBucket()->upload($uploadedfile, [
'name' => 'categories/'.$file,
// 'predefinedAcl' => 'PUBLICREAD',
]);
unlink($localfolder . $file);
}
我尝试使用
'predefinedAcl'=>'PUBLICREAD'
,但它不起作用,而且手动创建的访问令牌在存储中不再可用没有为通过服务器端SDK上载到云存储的文件生成下载URL
您有两个选项可以在自己的代码中为这些文件生成可公开访问的URL:
嘿,Vpa。你做过这个吗?如果我的答案有用,请单击向上投票按钮(▲) 如果它回答了您的问题,请单击复选标记(✓) 接受它。这样别人就会知道你已经得到了(足够的)帮助。也请参见