GCP PubSub:通过cURL类型的请求发布消息

编程入门 行业动态 更新时间:2024-10-11 17:23:20
本文介绍了GCP PubSub:通过cURL类型的请求发布消息的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

有没有人有直接从外壳通过cURL类型的命令将消息发布到GCP PubSub主题的实用示例?

我正在尝试不使用CLI和客户端库,并且我被OAuth的东西挂住了。

如果能列出在Linux上运行的bash脚本需要做的事情,我将非常高兴,如果任何人有这样的东西或可以拼凑一个,我将非常感激。

我已有的项目:

  • 我有一个正在处理的Linux计算引擎
  • 我有一些通过CLI和Python发布的实用示例
  • 我有一个服务帐户,可以很好地与pubSub配合使用(见上一个项目符号)

我完全认识到Google推荐使用CLI或API客户端库,但我需要能够在安装最少的主机上运行它(没有CLI、没有Python库等)。

我认为我需要做以下工作:

  • 对我的数据进行Base64编码
  • 创建JSON Web令牌(JWT)
  • 使用JWS获取OAuth令牌
  • 使用Token调用接口,如POSTpubsub.googleapis/v1/projects/myproject/topics/mytopic:publish
  • 非常感谢您的点子...Rich

    参考链接:

    cloud.google/pubsub/docs/publisher#pubsub-publish-message-protocol groups.google/forum/#!topic/cloud-pubsub-discuss/8fGaG5cWiTk groups.google/forum/?hl=sw#!topic/cloud-pubsub-discuss/8fGaG5cWiTk developers.google/identity/protocols/OAuth2WebServer developers.google/identity/protocols/OAuth2ServiceAccount

    推荐答案

    可以,可以使用cURL命令进行发布。您需要将访问令牌传递到请求中。要获取它,请登录到您将用于发布的所需服务帐户。如果您尚未创建,则可以创建并限制为仅允许发布:

    gcloud iam service-accounts create curl-publisher gcloud projects add-iam-policy-binding <project with topic> --member=serviceAccount:curl-publisher@<project with created service account>.iam.gserviceaccount --role=roles/pubsub.publisher

    现在,您可以从命令行登录到服务帐户并获得访问令牌:

    gcloud auth login curl-publisher@<project with created service account>.iam.gserviceaccount gcloud auth application-default print-access-token 您只需运行上述步骤一次即可获得访问令牌。现在,您可以在cURL命令中使用该访问令牌:

    PROJECT=my-project TOPIC=my-topic ACCESS_TOKEN=<token printed out above> curl -H 'content-type: application/json' -H "Authorization: Bearer $ACCESS_TOKEN" -X POST --data $'{ "messages": [{"data": "abcd"}]}' pubsub.googleapis/v1/projects/$PROJECT/topics/$TOPIC:publish

    更多推荐

    GCP PubSub:通过cURL类型的请求发布消息

    本文发布于:2023-10-10 22:20:33,感谢您对本站的认可!
    本文链接:https://www.elefans.com/category/jswz/34/1479916.html
    版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
    本文标签:类型   消息   GCP   PubSub   cURL

    发布评论

    评论列表 (有 0 条评论)
    草根站长

    >www.elefans.com

    编程频道|电子爱好者 - 技术资讯及电子产品介绍!