[解決済み] Cloud Functions for FirebaseでアップロードされたファイルからダウンロードURLを取得する
2022-04-23 04:10:24
質問
Functions for FirebaseでFirebase Storageにファイルをアップロードした後、そのファイルのダウンロードURLを取得したいのですが。
私はこれを持っています。
...
return bucket
.upload(fromFilePath, {destination: toFilePath})
.then((err, file) => {
// Get the download url of file
});
オブジェクトファイルには、たくさんのパラメータがあります。という名前のものでも
mediaLink
. しかし、このリンクにアクセスしようとすると、このエラーが表示されます。
Anonymous users does not have storage.objects.get access to object ...
どなたか、公開ダウンロードURLを取得する方法を教えてください。
ありがとうございます。
解決方法は?
を使用して署名付きURLを生成する必要があります。 取得SignedURL を経由して Google-cloud/storage(グーグルクラウド/ストレージ NPMモジュールです。
例
const gcs = require('@google-cloud/storage')({keyFilename: 'service-account.json'});
// ...
const bucket = gcs.bucket(bucket);
const file = bucket.file(fileName);
return file.getSignedUrl({
action: 'read',
expires: '03-09-2491'
}).then(signedUrls => {
// signedUrls[0] contains the file's public URL
});
を初期化する必要があります。
@google-cloud/storage
で
あなたのサービスアカウントの認証情報
のように、アプリケーションのデフォルトの認証情報では十分ではありません。
アップデイト : Cloud Storage SDK は、Firebase Admin SDK からアクセスできるようになり、以下のようになりました。 ラッパーとして機能する Google-cloud/storageの周りにある。 どちらかの場合のみとなります。
- 特別なサービスアカウントでSDKを初期化します(通常、デフォルトではない2つ目のインスタンスを使用します)。
- または、サービスアカウントなしで、デフォルトのApp Engineサービスアカウントに"signBlob"パーミッションを与えることである。
関連
-
[解決済み】「安全なTLS接続が確立される前にクライアントのネットワークソケットが切断されました」(ノード10
-
[解決済み】MongooseでEnumを作成し使用する方法
-
[解決済み】「npm install」と「npm rebuild」の違いとは?
-
[解決済み] MongoClient v3.0使用時、db.collectionが関数でない
-
[解決済み] create-react-app、インストールエラー("コマンドが見つからない")。
-
[解決済み] Node.jsのホスト名/IPが証明書のaltnamesと一致しない
-
[解決済み] Passport JSのreq.isAuthenticated()はどのように実装されていますか?[クローズド]
-
[解決済み] TypeError: コールバックはnodejsの関数ではありません。
-
[解決済み] express は `body-parser deprecated undefined extended` としてエラーを投げます。
-
[解決済み] バルク更新を行う。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】AWS STS AssumeRoleへのアクセスを可能にする方法
-
[解決済み】Node Version Manager のインストール - nvm コマンドが見つかりません。
-
[解決済み】エラーです。EACCES: 権限が拒否されました、アクセス '/usr/local/lib/node_modules' 。
-
[解決済み】AWS Lambdaでnodejsの「ref」モジュールを使用すると「invalid ELF header」と表示される件
-
[解決済み】MongoClient v3.0使用時、db.collectionは関数ではない
-
[解決済み】 console.logの出力をどこに永久保存するか?
-
[解決済み】"npm update -g" の後に "Cannot find module 'npmlog'" というエラーが発生する。
-
[解決済み] Node.jsのホスト名/IPが証明書のaltnamesと一致しない
-
[解決済み] nodeファイルの先頭にある"/usr/bin/env node "は、具体的には何をするのですか?
-
[解決済み] ReferenceError: describe は定義されていません NodeJs