2017-10-17 51 views
1

试图火力管理员添加到我的角度项目,但得到的错误,我只是不能得到解决(见截图)集成火力地堡管理与角4项目

here

难道npm install google-cloud但导致在短短的错误 (从Android的到来,并试图通过我自己要弄清楚,但我在这里失去了一些东西,不知道到底是什么)

app.component.ts

import {Component} from '@angular/core'; 

@Component({ 
selector: 'app-root', 
templateUrl: './app.component.html', 
styleUrls: ['./app.component.css'] 
    }) 
    export class AppComponent { 
constructor() { 
const admin = require('firebase-admin'); 
const serviceAccount = 
require("C:/Users/Pawel/Desktop/CODE/pamiAdmin3/src/app/serviceKey.json"); 

admin.initializeApp({ 
    credential: admin.credential.cert(serviceAccount), 
    databaseURL: 'https://pami-16c0f.firebaseio.com' 
    }); 
} 
} 
+3

admin SDK仅供在服务器上使用,不适用于最终用户访问(请参阅[将Firebase Admin SDK添加到服务器]顶部的警告(https://firebase.google。 com/docs/admin/setup)页面)。 – Jeff

+0

@Jeff那么这是一个服务器页面...:S – pb4now

+1

Admin SDK仅用于受信任的服务器环境 - 就像您控制的Node.JS服务器一样。为选择用户提供更多访问权限以查看/更改数据库中的内容应通过数据库安全规则来完成 – Jeff

回答

2

您应该使用Node.js和firebase-admin实现您的管理API,然后将其部署到服务器中。然后你的Angular应用程序可以连接到它,当它需要执行一些管理功能。将ID令牌从Angular应用程序传递到服务器,使用Admin SDK进行验证,以确保调用者具有所需的管理员权限。