auth/operation-not-supported-in-this-environment

Firebaseのソーシャル認証(Twitter)がうまく動作しないなと思いブラウザのコンソールを見ると、auth/operation-not-supported-in-this-environmentが表示されていた。

auth/operation-not-supported-in-this-environment
This operation is not supported in the environment this application is running on.
“location.protocol” must be http, https or chrome-extension and web storage must be enabled.

直訳すると「このアプリケーションが実行されている環境はサポートされていません」。認証部分なのでFirebase側かと思い30分ほど試行錯誤していたが、ローカル開発が問題だった。このところVSCodeのOpen in Broserで「file:///home/maeda/workspace/firebase/index.html」のようなURLで確認していたので少し麻痺していた。

サーバの上で走らせれば動くと思いlite-serverを導入すると無事起動した。


npm init -y
npm install lite-server --save-dev

# package.jsonのscriptsに以下追加
"dev": "lite-server"

npm run dev
> firebase_test@1.0.0 dev /home/maeda/workspace/firebase
> lite-server
[Browsersync] Access URLs:
 ------------------------------------
       Local: http://localhost:3000
    External: http://192.168.0.3:3000
 ------------------------------------
          UI: http://localhost:3001
 UI External: http://192.168.0.3:3001

Apacheでも問題ないと思われる。