使用 Java 从 Azure Function QueueTrigger 获取消息元数据

Posted

技术标签:

【中文标题】使用 Java 从 Azure Function QueueTrigger 获取消息元数据【英文标题】:Get the message metadata from an Azure Function QueueTrigger using Java 【发布时间】:2021-06-09 10:59:47 【问题描述】:

我正在使用 Micronaut 框架用 Java 编写 Azure 函数。

如果我使用@QueueTrigger 注释String 来接收消息正文,我的函数工作得非常好。不过我也想处理元数据。

文档提到元数据 (https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-queue-trigger?tabs=java#message-metadata) 并“建议”CloudQueueMessage 类,这似乎在 com.microsoft.azure.funtions:azure-functions-java-library 中不可用. (据我所知,azure-functions-java-library 还没有转移到 com.azure 命名空间/GAV)

是否可以使用 Java 获取存储队列消息元数据,如果可以,我缺少什么?

谢谢

【问题讨论】:

【参考方案1】:

我似乎遗漏了一些东西,您可以“绑定”到 CloudQueueMessage 类中保存的元数据的属性。

所以对于我的用例,我需要做的就是在函数方法中添加填充:

@BindingName("Id") final String id,

以下链接都是微软文档,最后一个在github上。Trigger Metadata definitionQueueStorage TriggerExample that actually accesses the metadata

【讨论】:

以上是关于使用 Java 从 Azure Function QueueTrigger 获取消息元数据的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 id_token 从 Azure Function 应用程序获取 Azure access_token?

将 Azure Function 从门户导入 Visual Studio

从 Azure Function App 调用 Snowflake 过程

无法从 Azure Function 中的 ffprobe 获取输出

HttpClient HTTP/2 从 Azure Function 调用 APN

发布时,Application Insights 不会从 Azure Function 捕获日志