こんにちは。virapture株式会社のもぐめっとです。
本日はfirestoreのsecurity ruleのunit testを書いていた時に遭遇したエラーの解決策の共有です。
結論から言うと、ファイアーウォールは切れです。
では詳細を解説します!
エラー症状
Could not reach Cloud Firestore backendといわれてsecurity ruleのunit testが動かない問題に遭遇しました。
admin側では問題なく接続できるのですが、client側で接続しようとすると上記エラーがでてしまうという問題です。
security ruleのunit testを作るにはclientで接続できないとテストができないのでとても困ってしまいました。
なんでadminでは繋がるのにclientで繋がらないやねんと・・・
原因
原因は簡単な理由で、kasperskyを起動していたせいでした。
インターネットセキュリティ系のソフトウェアが入っていると通信が妨害されてテストができないようでした。
開発者にとって、とても大敵です。
しかしセキュリティも大事なので無碍にもできないので悩ましいところ。
対策
テストする時だけファイアーウォール系のソフトウェアはOFFにしておきましょう。
または、emulator系のプロセスは除外したり、対象portを除外したりと設定をしておくのも有効かと思われます。
まとめ
ネットワーク的な問題で困ったらセキュリティソフトを疑えという教訓を得ました。
adminが繋がるというところでその意識が薄れてしまっていたのですが忘れないようにしたいと思います。
最後に、ワンナイト人狼オンラインというゲームを作ってます!よかったら遊んでね!
他にもCameconやOffchaといったサービスも作ってるのでよかったら使ってね!
また、チームビルディングや技術顧問、Firebaseの設計やアドバイスといったお話も受け付けてますので御用の方は弊社までお問い合わせください。