2017-06-16 3 views
0

firebase adminを使用する単純なReactアプリケーションを開発しています。Firebase-Admin、アプリケーションの反応にインポートするモジュールが見つかりませんエラー

create react appを使用して反応アプリケーションを生成しました。

そこで私は、このNPMのコマンドを使用してfirebase-adminをインストールしている:私はこのインポートを追加した私のindex.js

npm install firebase-admin --save 

を:

import React from 'react'; 
import ReactDOM from 'react-dom'; 
import App from './App'; 
import registerServiceWorker from './registerServiceWorker'; 

import * as admin from 'firebase-admin' 

ReactDOM.render(<App />, document.getElementById('root')); 
registerServiceWorker(); 

私はnpm startコマンドで起動して、自分のページを開いたときに私が手このエラー:

Module not found: Can't resolve 'dns' in 'D:\path\to\my\project\node_modules\firebase-admin\node_modules\isemail\lib' 

Whこれは起こっていますか?私は何か見落としてますか?

答えて

1

管理者用SDKは、クライアント側の環境では使用できません。それにはWebブラウザが含まれます。 Admin SDKは、Firebaseアプリの開発者が所有または管理する特権サーバー環境でのみ使用できます。 ReactアプリでFirebase web SDKを使用する必要があります。

+0

ええ、私はドキュメントの詳細は表示されません。だから、管理者がfirebaseインスタンスのためにすべてのユーザを見ることを許可するいくつかのタイプの管理インタフェースを構築していたら、私はブラウザ側の制御を許可するためにアプリ内の普通のユーザにする必要がありますか?だから私はfirebaseのインスタンスに管理者のコレクションを持っていただろうか? Admin SDKは、基本的にサーバー側のもの(クラウド機能)のためのものですか?右? – AlxVallejo

+0

正しい。サーバーで(管理SDKを使用して)いくつかの特権操作をホストし、その操作が必要なときにクライアント側のアプリケーションをサーバーに連絡させることができます。サーバーで 'admin.auth()。verifyIdToken()'を使ってリクエストを検証することができます。 –

関連する問題