Firebase の Cloud Functions から Firebase Firestore への書き込みをやろうとしていますが、 Missing or insufficient permissions.
となってしまって書き込みできません。
ググってみると、セキュリティールールが絡んでいそうだったので、一時的にセキュリティーを一番ゆるい(誰でも読み書き可能)にして見ましたが、同様のエラーが発生します。
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write;
}
}
}
セキュリティールールの更新反映に数分かかるということでしたが、十分に(10分程度)時間を置いてから試しているので、反映遅れではないかと思います。
他に考えられることはあるでしょうか?
参考までにFunctionsでのコードを添付します。
const admin = require('firebase-admin');
admin.initializeApp()
const firestore = admin.firestore();
exports.sampleAPI = functions.https.onRequest((request, response) => {
const text = request.body.text
writeText(text).then(value => {
console.log("==== Operation DONE ====")
response.status(200).send("OK")
return null
}).catch(error => {
console.error("xxxxxx Operation FAILED xxxxxxx")
console.error(error)
response.status(500).send(error)
})
}
async function writeText(text) {
const textRef = firestore.collection('texts')
return textRef.add({
text: text,
}).then(docRef => {
const id = docRef.id
return id
}).catch(error => {
throw error
})
}
-
気になる質問をクリップする
クリップした質問は、後からいつでもマイページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
クリップを取り消します
-
良い質問の評価を上げる
以下のような質問は評価を上げましょう
- 質問内容が明確
- 自分も答えを知りたい
- 質問者以外のユーザにも役立つ
評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。
質問の評価を上げたことを取り消します
-
評価を下げられる数の上限に達しました
評価を下げることができません
- 1日5回まで評価を下げられます
- 1日に1ユーザに対して2回まで評価を下げられます
質問の評価を下げる
teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。
- プログラミングに関係のない質問
- やってほしいことだけを記載した丸投げの質問
- 問題・課題が含まれていない質問
- 意図的に内容が抹消された質問
- 広告と受け取られるような投稿
評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。
質問の評価を下げたことを取り消します
この機能は開放されていません
評価を下げる条件を満たしてません
質問の評価を下げる機能の利用条件
この機能を利用するためには、以下の事項を行う必要があります。
- 質問回答など一定の行動
-
メールアドレスの認証
メールアドレスの認証
-
質問評価に関するヘルプページの閲覧
質問評価に関するヘルプページの閲覧
check解決した方法
0
自己解決しました。
https://firebase.google.com/docs/admin/setup?authuser=0
こちらの記事にあるように、FIREBASE_CONFIGの環境変数設定をしてやることでアクセスできるようになりました。
投稿
-
回答の評価を上げる
以下のような回答は評価を上げましょう
- 正しい回答
- わかりやすい回答
- ためになる回答
評価が高い回答ほどページの上位に表示されます。
-
回答の評価を下げる
下記のような回答は推奨されていません。
- 間違っている回答
- 質問の回答になっていない投稿
- スパムや攻撃的な表現を用いた投稿
評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。
15分調べてもわからないことは、teratailで質問しよう!
- ただいまの回答率 89.98%
- 質問をまとめることで、思考を整理して素早く解決
- テンプレート機能で、簡単に質問をまとめられる