繁体   English   中英

如何在没有云的情况下使用 Google PubSub Function

[英]How to use Google PubSub without Cloud Function

如何在不使用云功能的情况下使用 Google PubSub 检索账单更新? 我目前正在使用下面的代码,但它说onPublish不存在:

const { PubSub } = require('@google-cloud/pubsub');
const pubsub = new PubSub('MyProjectID');



handleServerEvent = pubsub.topic(GOOGLE_PLAY_PUBSUB_BILLING_TOPIC)
  .onPublish(async (message) => {

  })

TypeError: pubsub.topic(...).onPublish 不是 function

我正在使用 Node.js 并想对某个主题上发布的事件做出反应。

onPublish()方法是 Cloud Functions API 的一部分。您需要使用createSubscription()获取订阅object,然后使用它来监听新消息。 尝试以下操作:

const listenToTopic = async (topicName: string) => {
  const [sub] = await pubsub
    .topic(topicName)
    .createSubscription("subscriptionName");

  sub.on("message", (message) => {
    message.ack();
    console.log(`Received message: ${message}`);  
  });
};

// start listener
listenToTopic(GOOGLE_PLAY_PUBSUB_BILLING_TOPIC)

创建订阅后,您需要将createSubscription("subscriptionName")更改为subscription("subscriptionName")以收听传入消息,因为订阅已经创建

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM