〜您好,我正在开发一个带有google firebase的用户控制系统。 目前只有2个功能:添加用户并将其删除。
对于添加用户非常简单,我只需要从控制台复制并粘贴自动生成的脚本,但这里的问题是删除用户,因为我需要管理员级别的auth,所以,我读到的node.js和我在Centos7上运行的VPS,所以我继续进行安装:
yum install npm
然后在我的域名文件夹中,我使用了以下内容:
npm init
用于生成初始 package.json :
npm install firebase-admin --save
然后我不知道如何使用它,因为我知道没有为浏览器定义函数 require ,因为它是后端,我的意思是浏览器中出现以下错误:
未捕获的ReferenceError:未定义require
读了一下我发现我可以使用一个名为webpack的东西(我第一次使用它),然后我按照下面的说明操作:
npm install --save-dev ts-loader webpack-node-externals
npm install --global webpack
然后,我的配置文件:
webpack.config.js
'use strict';
var nodeExternals = require('webpack-node-externals');
module.exports = {
entry: './index.ts',
output: {
filename: 'index.js',
libraryTarget: 'this'
},
target: 'node',
module: {
rules: [
{
test: /\.tsx?$/,
loader: 'ts-loader',
options: {
transpileOnly: true
}
}
]
},
resolve: {
extensions: [ '.ts', '.tsx', '.js' ]
},
externals: [nodeExternals()]
};
tsconfig.json
{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"outDir": "./",
"noImplicitAny": true,
"strictNullChecks": false
},
"include": [
"./*.ts"
],
"exclude": [
"node_modules"
]
}
index.ts
const admin = require('firebase-admin');
const serviceWorker = require('./<MY_PRIVATE_KEY>.json');
admin.initializeApp({
credential: admin.credential.cert(serviceWorker),
databaseURL: "https://<MY_DATABASE>.firebaseio.com/"
});
运行 webpack 命令后,会生成 index.js 文件,该文件应该包含在我的网站中......但问题是......我仍然有错误...(附图中的完整错误)
Error of my website in the generated index.js
因此...
如果你帮我解决错误,我将不胜感激...我是node.js的新手 我只想运行删除用户功能:
admin.auth().deleteUser(uid)
.then(function() {
alert("Successfully deleted user");
})
.catch(function(error) {
alert("Error deleting user:" + error);
});