eat*_*000 2 firebase google-cloud-pubsub google-cloud-functions
我创建了两个 Firebase 函数 - 一个是 HTTPS,我在其中向主题发布消息,另一个是 pub/sub 函数,在其中我响应发布到该主题的消息。
testPubSub.ts
import { pubsub } from "firebase-functions";
export const testPubSub = pubsub
.topic("high-scores")
.onPublish(async (message, context) => {
console.log("hit test pubsub");
return null;
});
Run Code Online (Sandbox Code Playgroud)
testHttps.ts
import { https } from "firebase-functions";
import { messaging } from "firebase-admin";
export const testHookEndpoint = https.onRequest(async (request, response) => {
const payload = {
notification: {
title: "Test title",
body: "test body"
}
};
const pubsubResponse = await messaging().sendToTopic("high-scores", payload);
console.log("response from pubsub", pubsubResponse);
response.send("success");
});
Run Code Online (Sandbox Code Playgroud)
HTTPS 函数似乎运行良好(200 响应)并且消息传递在响应中返回消息 ID,但是我没有看到 pub/sub 函数在 Firebase 控制台中运行。
当我查看 GCP Console 时,我看到“高分”已在 Pub/Sub 选项卡中注册为主题,并且我可以通过 Google Cloud Scheduler 触发项目中的其他 pub/sub 功能。
我不确定我为此错过了哪一步。
messaging().sendToTopic("high-scores", payload)正在使用 Firebase Cloud Messaging 向订阅给定主题的移动应用程序发送消息。这与 Cloud Pubsub 消息传递完全不同。这两种产品实际上没有任何共同点 - FCM 适用于移动应用程序,而 pubsub 适用于服务器。
您需要做的是使用Node pubsub SDK将消息发送到您的 pubsub 主题。
| 归档时间: |
|
| 查看次数: |
576 次 |
| 最近记录: |