2017-06-16 38 views
0

我正在开发使用firebase admin的简单React应用程序。Firebase-Admin,导入它以响应应用程序抛出模块未找到错误

我已使用create react app生成反应申请。

然后我就用这个NPM命令安装firebase-admin

npm install firebase-admin --save 

在我index.js我已经加入此导入:

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无法在客户端环境中使用。这包括网页浏览器。 Admin SDK只能用于由Firebase应用程序开发人员拥有或管理的特权服务器环境。您应该在React应用程序中使用Firebase web SDK

+0

哎呀,我没有看到文档中的细节。因此,如果我建立了一些允许管理员查看所有用户的管理界面,例如我的firebase实例,那么我需要在应用内建立一个普通用户来授予浏览器端控制权。因此,我会在我的Firebase实例中拥有一组管理员? Admin SDK基本上只是服务器端的东西(即云功能)?对? – AlxVallejo

+0

正确。您可以在服务器中托管一些特权操作(使用admin SDK),并在需要这些操作时让您的客户端应用程序联系服务器。您可以在服务器中使用'admin.auth()。verifyIdToken()'来验证请求。 –

相关问题