在 Firebase Cloud Functions 中使用 express 和 consign 进行路由
Posted
技术标签:
【中文标题】在 Firebase Cloud Functions 中使用 express 和 consign 进行路由【英文标题】:Routing with express and consign in Firebase Cloud Functions 【发布时间】:2017-07-18 09:11:05 【问题描述】:我想在我的 Express 应用中实现路由,该应用将通过云功能公开。
这是我的函数/index.js 文件:
const functions = require('firebase-functions');
const express = require('express');
const consign = require('consign');
const app = express();
consign()
.include("./routes")
.into(app);
exports.api = functions.https.onRequest(app);
这是我的 ./routes/index.js 文件
module.exports = app =>
app.get('/', (req,res)=>
res.json(status:"success");
)
所以我猜这段代码足以托管一个云功能,当我调用这个托管 url https://us-central1-appname-79516.cloudfunctions.net/api(由于隐私原因更改了 url)它应该返回响应为 "status":"success":
当我调用上面的 url 时,它会显示错误“错误:无法处理请求”
帮助我如何在云功能中使用快递和寄售模块
【问题讨论】:
您是否尝试过在没有寄售的情况下托管快递应用,看看是否先行? 是的,它成功了!! 所以你是说在同一个app中添加consign的那一刻就有问题了? 【参考方案1】:这有点晚了,但我想仍然相关。所以,这就是我所做的:
consign(
cwd: 'src'
)
.include("routes")
.into(app)
CWD 设置基本目录,如文档中所述:
Consign will simply use a relative path from your current working directory, however, sometimes you don't want heavily nested files included in the object chain, so you can set the cwd
https://github.com/jarradseers/consign
在我的例子中,src
是包含我的 firebase 函数代码 (functions/src) 的文件夹。
希望对你有帮助!
【讨论】:
以上是关于在 Firebase Cloud Functions 中使用 express 和 consign 进行路由的主要内容,如果未能解决你的问题,请参考以下文章
在 TypeScript 中为 Firebase Cloud Function 配置 mailgun
在 Firebase Cloud Function 中发出 Youtube Data API 请求
从请求中获取用户信息到 Firebase 中的 Cloud Function
Firebase:Firestore 未在 Cloud Function 的计划函数中更新数据