質問: ### 前提・実現したいこと 細かい技術の話ではないのですが・・・ firebaseを用いて、リアルタイムでチャットをしつつ、スライドを表示させる機能を実装したいと考えています(イメージとしては、schooの画面を想像してもらえればと。表示させるスライドを操作者で指定したいです。) 自分の考えた方法として、firebaseに表示させたいファイルをアップロードし、保存したものを表示させればいいのかなと思ったのですが、firebaseの仕様外ではないかとの指摘をもらいました。 自分で調べているのですが、ウェブの構造の全体像も含めてまだまだ勉強中なので、質問させていただきました。 ご指導のほどよろしくお願いいたします。 ※追記 細かい仕様を伝えると、同じスライドを表示させれればいいです。操作は閲覧者の自由で行うことができればと思います。
回答: チャットのフォームからPDFをアップロードするタイミングで、そのPDFをFirebase Storageに保存します。 Storageに保存したPDFのURLを取得します。その取得したURLをFirebase Databaseに登録したら、PDFを表示させることが出来ると思います。 ``` var file = 'アップロードするPDFファイル'; var fireName = 'アップロードするPDFのファイルネーム'; //ユニークでないけない(被ると上書きされる) var storage = firebase.storage().ref('/chats/files'); var uploadTask = storage.child(fileName).put(file); uploadTask.on('state_changed', function () { var downloadURL = uploadTask.snapshot.downloadURL; //URLを取得 firebase.database().ref('/chats/files').push({ fileUrl: downloadURL }); }) ``` 上記がデータベースにURLを登録までのサンプルになりますが、随所適切なものをいれてもらうといいかと思います。