首页 > 解决方案 > Azure Function v2 队列触发器仅接收 Json 消息

问题描述

我有一个带有队列触发器的天蓝色函数项目;该项目是一个天蓝色的功能v2。

JsonSerialization.cs当我向队列中添加非 JSON 类型的消息时,我在at 行内出现异常JObject parsed = JObject.Load(jsonReader);

例外是:Newtonsoft.Json.JsonReaderException: 'Unexpected end when reading JSON. Path '', line 1, position 3.'

然后代码正常进入队列触发器。

运行 azure function v1 时,我没有遇到此异常。

有人能解释一下为什么 azure function v2 会强制您使用 JSON 类型的队列消息吗?有没有办法避免进入JsonSerialization.cs

谢谢!!

标签: azureazure-functionsazure-queuesjson-serialization

解决方案


这是一个已知问题,并且PR已合并,更新将在Microsoft.Azure.WebJobs.Extensions.Storage10 月中旬发布下一版本时可用。请参阅Azure 团队的相关评论

目前的解决方法是忽略这个第一次机会异常,因为它不会导致真正的问题。在“抛出时除外”下,选中Mircrosoft.Azure.WebJobs.Host.dll

在此处输入图像描述

更新

它应该从Microsoft.Azure.WebJobs.Extensions.Storagev3.0.1开始修复


推荐阅读