使用 Pub/Sub 推送到 POST API

Push to a POST API using Pub/Sub

我正在为我的 Android Management API 解决方案设置 Pub/Sub,我创建了一个 Topic & Subscription 来创建一个 ENROLLMENT 通知。订阅类型为 PULL,因此当我拉取它时,它会按预期工作并显示注册通知。

我想将 Delivery type 用作 PUSH 并点击 POST API,这会将这个新注册设备的详细信息添加到我的数据库中。 我可以使用 POST API URL 之类的 https://abc.dcd.com:8008/api/PubTest 作为 Endpoint URL 吗?如果是这样,我如何使用调试器对其进行测试?

我无法在 C# 中找到任何教程来执行相同的操作。

提前致谢!

我没有发现使用 https://abc.dcd.com:8008/api/PubTest 之类的东西作为端点 URL 有什么明显的错误。 Pub/Sub 推送请求如下所示(注意 message.data 字段是 base64 编码的)。

POST https://abc.dcd.com:8008/api/PubTest

{
  "message": {
    "attributes": {
      "key": "value"
    },
    "data": "SGVsbG8gQ2xvdWQgUHViL1N1YiEgSGVyZSBpcyBteSBtZXNzYWdlIQ==",
    "messageId": "136969346945"
  },
  "subscription": "projects/MY_PROJECT/subscriptions/MY_SUBSCRIPTION"
}

要配置您的订阅以将消息传送到推送端点,您可以通过“创建订阅”或“编辑订阅”页面直接在 Google 云控制台中进行配置。

Screenshot of the Google Cloud Console's 'Edit subscription' page

您还可以使用 gcloud 配置您的订阅。

$ gcloud pubsub subscriptions update \
  projects/MY_PROJECT/subscriptions/MY_SUBSCRIPTION \
  --push-endpoint https://abc.dcd.com:8008/api/PubTest

有关更多信息,请参阅以下推送订阅使用指南:https://cloud.google.com/pubsub/docs/push