如何使用 HTTP(S) POSTMAN 发布到 AWS IoT 上的主题

问题描述 投票:0回答:1

我想仅使用 HTTP(S) 发布有关 AWS IoT 的主题。所以我在 IoT 控制台上创建了一个 Thing。

创建东西后,我还下载了所有证书

现在根据AWS开发人员指南我的端点应该是(不确定最后一个引号是否是开发指南中的拼写错误)

https://xxx-ats.iot.ap-northeast-1.amazonaws.com/topics/TestTopic?qos=1"

现在我打开了 AWS Iot 测试控制台并订阅了 #,这基本上意味着我应该看到所有传入的帖子数据

现在我几天无法解决的主要问题是我不知道如何使用证书,我使用POSTMAN来测试,我如何使用这些证书?这样我就可以检查 aws 是否收到我发出的发布请求

我在邮递员中找到了添加证书的位置,但我不知道该使用哪些证书,我下载了 5 个。 .crt 文件似乎很明显,关键是哪个(公共或私有)?,PFX 文件是什么?:

amazon-web-services https postman certificate aws-iot
1个回答
0
投票

要使用 HTTPS 发布到 AWS IoT 上的主题,您需要使用在设置 AWS IoT Thing 时获得的正确客户端证书和私钥来配置 Postman。

如“使用 Windows 或 Linux PC 或 Mac 作为 AWS IoT 设备”中所示:

  • CRT 文件是您在注册事物时从 AWS IoT 收到的客户端证书文件。它的名称应类似于
    certificate.pem.crt
    ,并且您应该在 Postman 中选择此文件,其中显示:“
    Select CRT file
    ”。
  • KEY 文件是与您的客户端证书关联的私钥文件。它的名称应类似于
    private.pem.key
    ,并且您应该在 Postman 中选择此文件,其中显示:“
    Select KEY file
    ”。

请参阅邮差/添加客户端证书

PFX 文件是一种包含证书和私钥的文件类型,通常受密码保护。
AWS IoT 默认不提供 PFX 文件;如果需要,您需要根据现有证书和密钥创建一个,但 Postman 不需要它来连接到 AWS IoT。

如果您在为证书创建私钥时设置了密码,则需要在此处输入。如果您没有设置密码,则可以将此留空。

使用 CRT 和 KEY 文件配置 Postman 后,请确保正确设置您的请求:

  • 方法:POST

  • 网址:

    https://<your-iot-endpoint>/topics/<your-topic>?qos=1
    <your-iot-endpoint>
    替换为 AWS IoT 提供的终端节点,将
    <your-topic>
    替换为您要发布到的主题。

  • 标头:包含端点所需的任何标头,例如

    Content-Type: application/json

  • 正文:在请求正文中包含要发送的消息,并采用适当的格式(例如,如果将

    Content-Type
    设置为
    application/json
    ,则作为 JSON 对象)。

在 Postman 中发送请求现在应该将消息发布到 AWS IoT 中的指定主题,并且如果您订阅了该主题或包含该主题的通配符,您应该能够在 AWS IoT MQTT 测试客户端中看到该消息。

如果您遇到

403 Forbidden
错误,通常表示您的身份验证或授权存在问题。检查以确保您的证书正确、有效,并且在 AWS IoT 中附加了必要的策略(至少
iot:Connect
iot:Publish
,还有
iot:Subscribe
iot:Receive
)。

© www.soinside.com 2019 - 2024. All rights reserved.