質問: $bucket->upload( fopen(public_path().'/storage/thumbnail/'.$file->hashName(), 'r') ); ``` firebaseのstorageをコンソールから確認すると、アップしたファイルは存在するのですが、 開こうとすると、読み込み状態になり画像自体を確認することはできません。 1.ファイルはアップされているのに、見ることができない、 公開URLも生成されていないのはなにかアップする際にオプションの指定や、 Firebase側でパーミッションなどの設定が必要なのでしょうか? 2.もし公開状態でアップできたら、公開URLを取得するにはどうしたらよいでしょうか? 公式ドキュメントや、ソースを確認したのですが行き詰まってしまったため、アドバイスいただけると助かります。 よろしくお願いいたします。
回答: 自己解決しました。 以下のサンプルのコードを参考にしました。 ``` $storage = app('firebase.storage'); $bucket = $storage->getBucket(); $object = $bucket->upload( fopen(public_path().'/storage/thumbnail/'.$file->hashName(), 'r'), [ 'predefinedAcl' => 'publicRead' ] ); $downloadUrl = "https://storage.googleapis.com/".$bucket->name().'/'.$object->name(); ``` オプションを追加し、アップロード。 ダウンロードURLも取得できました。 ただし、Firebaseのコンソールで、アップされた画像を見ようとすると読み込み表示になり表示されません。 この部分はバグなのかなぁ。。