Javascript Centos和express的Firebase作为后端不工作
我已经决定使用firebase作为firestore的身份验证和基本表单信息的后端 在过去,我在云函数中使用了这个expressapi来实现这一点,我正在基于这个新的设置。但是我希望在Vultr Centos服务器上使用它,与我的api的其余部分一起使用,现在让一切变得更简单,因为我不想使事情过于复杂(直到稍后:P) 现在-我刚刚将这个repo克隆到我的服务器上,我想用postman测试它,但我在访问它时遇到了问题 我不知道如何解决这个问题,如果有人能给我指出正确的方向,那我的生活就会轻松得多! 这是当前的索引文件和包json文件。我已经创建了服务器。请听,现在就让它工作吧。Javascript Centos和express的Firebase作为后端不工作,javascript,node.js,firebase,express,firebase-authentication,Javascript,Node.js,Firebase,Express,Firebase Authentication,我已经决定使用firebase作为firestore的身份验证和基本表单信息的后端 在过去,我在云函数中使用了这个expressapi来实现这一点,我正在基于这个新的设置。但是我希望在Vultr Centos服务器上使用它,与我的api的其余部分一起使用,现在让一切变得更简单,因为我不想使事情过于复杂(直到稍后:P) 现在-我刚刚将这个repo克隆到我的服务器上,我想用postman测试它,但我在访问它时遇到了问题 我不知道如何解决这个问题,如果有人能给我指出正确的方向,那我的生活就会轻松得多!
const functions = require("firebase-functions");
const app = require("express")();
const FBAuth = require("./util/fbAuth");
const server = require('http').createServer(app);
const cors = require("cors");
//This was recently added to try and make it all work easier!
server.listen(port, ipaddress, () => {
});
app.use(cors());
const { db } = require("./util/admin");
const {
getAllWorkflows,
...
} = require("./handlers/workflow");
const {
signup,
login,
uploadImage,
addUserDetails,
getAuthenticatedUser,
getUserDetails
} = require("./handlers/users");
// Workflow Routes
app.get("/Workflows", getAllWorkflows);
...
// user route
app.post("/user", FBAuth, addUserDetails);
app.post("/user/image", FBAuth, uploadImage);
...
// cloud functions are better than firebase library because of load time.
exports.api = functions.https.onRequest(app);
这是package.json文件
{
"name": "functions",
"description": "Cloud Functions for Firebase",
"scripts": {
"serve": "firebase serve --only functions",
"shell": "firebase functions:shell",
"start": "npm run shell",
"deploy": "firebase deploy --only functions",
"logs": "firebase functions:log"
},
"engines": {
"node": "10"
},
"dependencies": {
"busboy": "^0.3.1",
"cors": "^2.8.5",
"express": "^4.17.1",
"firebase": "^7.21.1",
"firebase-admin": "^8.9.0",
"firebase-functions": "^3.11.0",
"firebase-tools": "^7.11.0"
},
"devDependencies": {
"firebase-functions-test": "^0.1.6",
"node-gyp": "^5.0.7"
},
"private": true
}
对于我正在安装的后端,我使用这种工作方式(如果有帮助的话!),我将用上面提到的firebase内容替换它——如果这有意义的话。它目前可用,可用于注册和登录功能,对我来说,关键部分就是使用firebase和firestore
const config = require('../../config');
const express = require('express');
const app = express();
const server = require('http').createServer(app);
非常感谢您对此事的指导!
Firebase和firestore似乎是避免重新发明轮子的好方法,只要我可以简单地键入npm start,并开始使用postman测试底层功能:s
API基于我做的另一个附带项目,这里主要是为那些有兴趣进一步探索它的人准备的
https://github.com/Hewlbern/LightSpeed/tree/master/sigops
非常高兴能用最简单的方法前进——我不想在客户端有任何库,因为我想让我的前端超级高效。谢谢 云函数不允许您监听任何端口以接收请求。它使用部署期间自动提供的URL自动处理传入连接。对该URL的所有传入请求都将路由到由
functions.https.onRequest()
生成的导出函数定义的函数回调
如果您需要监听特定端口的能力,那么云功能不是适合您的用例的合适产品。云功能不能部署在定制服务器上-它只能在谷歌提供的基础设施上工作。很有意义!我只想使用firebase身份验证和firestore。当大多数代码看起来都应该按原样工作时,将此更改为使用该代码的最佳方法是什么?只需从文档开始,并随附示例即可。实际上没有“最佳实践”。还有很多示例代码和codelab可供学习如何工作。
https://github.com/Hewlbern/LightSpeed/tree/master/sigops