azure存储队列消息中的特殊字符



我有一个简单的代码:

QueueClient azQueue = new QueueClient(@"<connection string>", "test-queue");                
azQueue.SendMessage("test®test");

并且它以消息"失败;6次尝试后重试失败"如果我从字符串中删除®字符,它会毫无问题地发送消息。请帮我正确处理特殊字符。

我相信您使用的是较新的SDKAzure.Storage.Queues,它不会像以前的Microsoft.Azure.Storage.QueueWindowsAzure.Storage那样在Base64中自动编码消息(已弃用(。因此,最好像下面这样对您的消息进行编码。另请参阅:https://github.com/Azure/azure-sdk-for-net/issues/11358还有一个功能请求https://github.com/Azure/azure-sdk-for-net/issues/10242.

QueueClient azQueue = new QueueClient(@"<connection string>", "test-queue");                
azQueue.SendMessage(Convert.ToBase64String(Encoding.UTF8.GetBytes("test®test")));

最新更新