从另一个云function调用云function
我正在使用云端函数在免费的Spark层次上调用另一个云端函数。
有没有特殊的方法来调用另一个云端function? 或者你只是使用标准的HTTP请求?
我曾尝试直接调用其他函数,如下所示:
exports.purchaseTicket = functions.https.onRequest((req, res) => { fetch('https://us-central1-functions-****.cloudfunctions.net/validate') .then(response => response.json()) .then(json => res.status(201).json(json)) })
但是我得到错误
FetchError:请求https:// us-central1-functions- ****。cloudfunctions.net/validate失败,原因:getaddrinfo ENOTFOUND us-central1-functions – *****。cloudfunctions.net us-central1-functions – ***** cloudfunctions.net:443
这听起来像firebase阻止连接,尽pipe它是一个谷歌拥有,因此它不应该被locking
Spark计划只允许向Google拥有的服务发送出站networking请求。
如何使用云端函数调用另一个云端函数?
您不需要通过全新的HTTPS调用来调用某些共享function。 您可以简单地将常见的代码抽象成一个常规的JavaScript函数,它被任何一个调用。 例如,你可以像这样修改模板helloWorld函数:
var functions = require('firebase-functions'); exports.helloWorld = functions.https.onRequest((request, response) => { common(response) }) exports.helloWorld2 = functions.https.onRequest((request, response) => { common(response) }) function common(response) { response.send("Hello from a regular old function!"); }
这两个函数将完成相同的事情,但具有不同的端点。
- 从Firebase Function / Express / Node.js获取原始POST数据
- 推入Firebase数据库时如何设置按键?
- 我是否需要在每个Cloud Function模块文件的顶部调用admin.initializeApp?
- Firebase:firebase.messaging()不是一个函数
- 在NodeJS应用程序中提交firebase文件的做法是什么?
- FCM错误结果 – 将错误提交给令牌
- 从Firebasefunction(节点)上传时,Firebase存储文件types未设置
- 处理FCM设备组的刷新令牌
- “使用Node.JS的Firebase云function”中的“functions.config()不可用”