如何在具有Angular 7前端和Laravel后端的Firebase上存储图像?

问题描述 投票:0回答:1

我对Firebase有点困惑。我有一个可以正常使用Laravel的默认存储的应用程序。但是我不希望用户生成的其他任何内容都在服务器上,因此我正在考虑使用Firebase Cloud Storage Service。但我有一些疑问。

这是我的控制器功能,当我收到图像文件时,该功能会上传到Laravel的服务器上:

  if($request->hasFile('file')) {

                $mpFile = $request->file('file');
                $date  = Carbon::now();
                $year  = $date->year;
                $month = $date->month;
                $directory = $year . '/' . $month;

                $fileObj['filepath'] = Storage::disk('uploads')->put($directory,  $mpFile);
                $fileObj['fileName'] = basename($fileObj['filepath']);
                $exists   = Storage::disk('uploads')->exists($fileObj['filepath']);

                if($exists) {
                    $this->mdFile->store($fileObj, $categoryObj->mp_category_id);
                    $response["imgstatus"] = "Imagem anexada com sucesso";
                }else {
                    $response["imgstatus"] = "Não foi possível fazer o upload tente novamente";
                }

            }

发生这种情况时,file_pathfile_name与数据库中的对象ID参考相关联地存储在数据库中。

但是我不知道如何使用Firebase来执行此操作,我必须在Laravel上使用Firebase吗?存储图像并从Firebase接收file_path和file_name?我该怎么做?

还是只是另一种方法?

angular laravel firebase firebase-storage
1个回答
1
投票

查看此文档https://firebase.google.com/docs/storage/web/upload-files

您可以将图像上传到Firebase存储并获得下载URL作为回报。您可以将此路径保存在您使用的数据库中。

此链接中有一个不错的教程:https://angularfirebase.com/lessons/firebase-storage-with-angularfire-dropzone-file-uploader/

© www.soinside.com 2019 - 2024. All rights reserved.