Azure 函数中的绑定队列存储失败消息文本

问题描述

我已成功向 Azure 队列存储发送了一些消息。

这是我如何将消息发送到我的队列存储的代码

private void QueueEmail(Email email)
{
    QueueClient client = GetQueueStorage("invoice-email");

    var message = JsonConvert.SerializeObject(email);

    System.Diagnostics.Debug.WriteLine(message);
    client.SendMessageAsync(message).Wait();
}

Queue Storage

当我尝试运行azure函数来处理队列时出现错误,执行失败。下面是错误信息。

Error me

有人知道如何解决这个问题吗?

解决方法

您遇到此问题的原因是 Function 需要一个 base64 编码的字符串,而您传递的是一个简单的字符串。

从此link

编码

函数需要一个 base64 编码的字符串。任何调整 编码类型(为了将数据准备为 base64 编码的字符串) 需要在调用服务中实现。

在发送消息之前,请尝试将其转换为 base64 编码的字符串。类似的东西:

020-06-29 00:00:00  difference    0.221574
2020-07-06 00:00:00  difference    0.442167
2021-06-28 00:00:00  difference    0.324221
2021-07-07 00:00:00  difference    0.408635
Name: (B,total),dtype: float64