我开发了一个机器人,每当我在一个表单流中发布PostAsync herocards(50个英雄卡片)时,它最终会给我一个错误信息:'状态大小超出配置限制。'来自Microsoft.Bot.Connector.DLL
尝试setPrivateConversationData时发生错误 在模拟器上的错误下面:
"key": {
"channelId": "emulator",
"conversationId": "i99caeb8n2h7",
"userId": "default-user"
},
"state": {
"eTag": "1506952139325",
"data": {
"ResumptionContext": {
"locale": "en-US",
"isTrustedServiceUrl": true
},
"DialogState": "H4sIAAAAAAAEAOx9B2AjWX........",
"ServiceUrl": "http://localhost:1460"
}
}
}
响应:
{
"error": {
"code": "MessageSizeTooBig",
"message": "State size exceeded configured limit."
}
}
谢谢大家
答案 0 :(得分:0)
根据docs,使用默认状态功能可以存储的数据量有限制。每个状态存储(即用户,会话和私有机器人数据包)最多可包含64kb数据。
您必须存储较少的信息或提供自己的存储机制。
以下文章介绍了如何使用CosmosDb管理状态数据:https://docs.microsoft.com/en-us/bot-framework/dotnet/bot-builder-dotnet-state-azure-cosmosdb