質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Firebase

Firebaseは、Googleが提供するBasSサービスの一つ。リアルタイム通知可能、並びにアクセス制御ができるオブジェクトデータベース機能を備えます。さらに認証機能、アプリケーションのログ解析機能などの利用も可能です。

Google Cloud Platform

Google Cloud Platformは、Google社がクラウド上で提供しているサービス郡の総称です。エンドユーザー向けサービスと同様のインフラストラクチャーで運営されており、Webサイト開発から複雑なアプリ開発まで対応可能です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

1回答

720閲覧

Cloud Functions から Firebase Firestore へアクセスできない

_CHO

総合スコア16

Firebase

Firebaseは、Googleが提供するBasSサービスの一つ。リアルタイム通知可能、並びにアクセス制御ができるオブジェクトデータベース機能を備えます。さらに認証機能、アプリケーションのログ解析機能などの利用も可能です。

Google Cloud Platform

Google Cloud Platformは、Google社がクラウド上で提供しているサービス郡の総称です。エンドユーザー向けサービスと同様のインフラストラクチャーで運営されており、Webサイト開発から複雑なアプリ開発まで対応可能です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2019/10/03 02:29

編集2019/10/03 02:30

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でのコードを添付します。

JavaScript

1const admin = require('firebase-admin'); 2admin.initializeApp() 3const firestore = admin.firestore(); 4 5 6exports.sampleAPI = functions.https.onRequest((request, response) => { 7 const text = request.body.text 8 9 writeText(text).then(value => { 10 console.log("==== Operation DONE ====") 11 response.status(200).send("OK") 12 return null 13 }).catch(error => { 14 console.error("xxxxxx Operation FAILED xxxxxxx") 15 console.error(error) 16 response.status(500).send(error) 17 }) 18} 19 20async function writeText(text) { 21 const textRef = firestore.collection('texts') 22 23 return textRef.add({ 24 text: text, 25 }).then(docRef => { 26 const id = docRef.id 27 return id 28 }).catch(error => { 29 throw error 30 }) 31} 32

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

自己解決しました。
https://firebase.google.com/docs/admin/setup?authuser=0
こちらの記事にあるように、FIREBASE_CONFIGの環境変数設定をしてやることでアクセスできるようになりました。

投稿2019/10/04 02:12

_CHO

総合スコア16

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問