我需要通过 Azure 队列发送压缩的 Base64 数据,该队列有 64K 的限制。
我的代码压缩数据,然后将其编码为 Base64 字符串。
我验证压缩和编码的字符串不超过 64000 字节(参见下面的 encodedLen),但是,当我尝试添加 ~57,000 字节的消息时,我的代码崩溃了。
var byteString = Encoding.UTF8.GetBytes(articleDataToSend);
var compressed = QuickLZ.compress(byteString, 1);
var encoded = Convert.ToBase64String(compressed);
var encodedLen = Encoding.UTF8.GetByteCount(encoded);
if(encodedLen < 64000)
{
QueueMessage(_nlpInputQueue, encoded);
}
我正在使用 Visual Studio 2012 和 .Net 4.5。
我在这里想念什么?