问题描述:当使用AWS Boto3 IotData Publish API时,如果消息中包含斜杠(/),则该API将无法正常工作。
使用base64编码将消息进行编码。然后使用encoded_payload而不是Payload参数将消息发布到IoT主题。下面是Python代码示例:
import boto3
import base64
# IoT client initialization
client = boto3.client('iot-data', region_name='us-west-2')
message = "Hello/World"
message_bytes = message.encode('ascii')
base64_bytes = base64.b64encode(message_bytes)
base64_message = base64_bytes.decode('ascii')
# Publish message
response = client.publish(
topic='test_topic',
encoded_payload=base64_message
)