javascript - 如何从代码中查找是否在本地运行的Firebase函数

标签 javascript firebase google-cloud-functions

我想为urlbase函数分配一个URL

const localUrl = localUrlBase + apiEndpoint
const onlineUrl = onlineURLBase + apiEndpoint 
const urlToUse = process.env.dev? localUrl : onlineUrl


现在,当我在本地运行函数时,我希望它分配localUrl但它正在分配onlineUrl

如何从代码中知道函数是在线托管还是在本地运行。

最佳答案

方法:

这可以通过将参数传递给节点来完成。在此示例中,我们可以将参数dev与常规命令一起传递以运行节点应用程序。我将使用非常通用的命名约定(app.js),但是您必须更改名称以适合您的实际文件路径。

运行其中包含您的功能的文件时:node app.js dev

我们传递参数dev,并且可以在运行process.argv的第3个位置的node.js应用程序中访问该参数。

在文件中:

const env = process.argv[2] === "dev"

const localUrl = localUrlBase + apiEndpoint;
const onlineUrl = onlineURLBase + apiEndpoint;
const urlToUse = env ? localUrl : onlineUrl;   


然后只需检查是否已创建env变量。

关于javascript - 如何从代码中查找是否在本地运行的Firebase函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56185985/

相关文章:

firebase - 即使坐标在抖动中也不同,用户之间的距离始终为0?

Firebase 云函数中的 Python 与 Node.js 事件负载

firebase - 调用Firebase的 "Bad request"方法时如何防止 `.onCall()`?

javascript - 为什么编译器在将数字/ bool 值分配给字符串 var 时不抛出错误

javascript - 扩展库时附加 jQuery 回调函数

javascript - 使用 AngularJS 在文本框中需要两个词

javascript - 将 Manifest Version 3 Chrome Extension 连接到 firestore 数据库

javascript - 从 XMLHttpRequest 对象返回自定义对象

java - firebase addvalueeventlistener 未在一台设备中触发

node.js - 当前项目未配置或授权提供的动态链接域