我的操作系统是windows 10。
我有一个计划的firebase函数,我想在本地运行:
functions = require('firebase-functions')
admin = require('firebase-admin')
exports.myFunction = functions.pubsub.schedule('every 30 minutes').onRun((context) => {
console.log('Hello World!')
return null
})
为了在本地运行此功能,我运行了两个命令(答案取自此处(:
firebase functions:shell
myFunction()
我可以用一行代码而不是两行代码执行这个命令吗?
将函数逻辑与调度逻辑分离,然后使用节点直接调用函数:
函数.js:
const functions = require('firebase-functions')
const admin = require('firebase-admin')
const foo = require('./foo')
exports.myFunction = functions.pubsub.schedule('every 30 minutes').onRun(foo)
foo.js:
module.exports = (context) => {
console.log('Hello World!')
return null
}
一行中有节点的呼叫:
node -e 'require("./foo")()'
注意:您可能需要在foo.js中手动提供配置/凭据,这取决于您正在访问的Firebase资源,因为当您直接调用它时,您不是在云环境中运行它。