firebase-adminとfirebase-functionsを使用してFirebase Storageにファイルをアップロードします。firebase-adminでアップロードされたファイルからパブリックURLを取得
service firebase.storage {
match /b/{bucket}/o {
match /images {
allow read;
allow write: if false;
}
}
}
そして、私はこのコードでパブリックURLを取得したい:
私はストレージにこのルールを持っている
const config = functions.config().firebase;
const firebase = admin.initializeApp(config);
const bucketRef = firebase.storage();
server.post('/upload', async (req, res) => {
// UPLOAD FILE
await stream.on('finish', async() => {
const fileUrl = bucketRef
.child(`images/${fileName}`)
.getDownloadUrl()
.getResult();
return res.status(200).send(fileUrl);
});
});
をしかし、私はこのエラー.child is not a function
を持っています。 firebase-adminでファイルのパブリックURLを取得するにはどうすればよいですか? using Cloud Storage documentation上のサンプルアプリケーションコードから
はい@Grimthorrが、匿名ユーザーがファイルにアクセスすることはできません。 – SaroVin
申し訳ありませんが、代わりにパブリックアクセスのダウンロードURLを入手したいですか? Firefoxのクラウド機能でアップロードされたファイルからダウンロードURLを取得してください(https://stackoverflow.com/q/42956250/2754146) - Admin SDKだけでは不可能と思われます。 – Grimthorr
はい、私はこの方法を知っていますが、URLが非常に長いため、私はこの解決策が嫌いです。とにかく、これは唯一の方法だと思われます。 – SaroVin