【发布时间】:2021-05-04 03:02:57
【问题描述】:
我正在使用提供的函数发送带有 Azure Sphere 开发工具包的字符串:
AzureIoT_SendMessage("Hello from sample App")
消息被发送到 IoT 中心,然后通过 JSON 编码路由到存储 Blob。如果我查看 blob 存储,我会得到以下信息:
{"EnqueuedTimeUtc":"2019-05-22T12:33:42.2320000Z","Properties":{},"SystemProperties":{"connectionDeviceId":"fbea*****************6d**********************9c0","connectionAuthMethod":"{\"scope\":\"device\",\"type\":\"x509Certificate\",\"issuer\":\"external\",\"acceptingIpFilterRule\":null}","connectionDeviceGenerationId":"63************22","enqueuedTime":"2019-05-22T12:33:42.2320000Z"},"Body":"SGVsbG8gZnJvbSBzYW1wbGUgQXBw"}
字段“body”根本不显示发送的字符串(“来自示例应用程序的Hello”),但它显示“SGVsbG8gZnJvbSBzYW1wbGUgQXBw”。为什么会这样?我该如何解决?
我发现,如果我将存储格式化为 AVRO(而不是 JSON),则字符串会正确呈现,但消息会(字面上)变成一个 blob,并且不能用于 powerBI 等流服务(例如)。但是,可以在 blob 中找到该消息以及其他一些混乱的东西(参见下图,默认字符串消息)
【问题讨论】:
-
SGVsbG8gZnJvbSBzYW1wbGUgQXBw是Hello from sample App的 base64 编码值。 -
我可以在powerBI中解码吗?
-
刚刚浏览文档,您可以尝试先使用
Text.ToBinary()(docs.microsoft.com/en-us/powerquery-m/text-tobinary) 通过指定Base64 编码将文本转换为二进制,然后使用Binary.ToText()(@987654323) 将其转换回文本@)?
标签: azure azure-storage azure-blob-storage