【问题标题】:Read BrokeredMessage body multiple time多次读取 BrokeredMessage 正文
【发布时间】:2018-06-17 04:50:17
【问题描述】:

我知道错误消息是不言自明的,我们不能多次阅读消息正文。这里我使用 AOP (Aspect Oriented Programming) 作为审计日志。

[AuditServiceMethod(AttributePriority = 0)]
[FunctionName("ValidateSubscriber")]
    public static async Task RunAsync([ServiceBusTrigger("validate-message", AccessRights.Manage,
        Connection = "ServiceBusConnection")]BrokeredMessage message,
        TraceWriter log,
        [Inject(typeof(ICommonUtilities))] ICommonUtilities commonUtility)
    {
        string body;
        using (var stream = message.GetBody<Stream>())
        using (var streamReader = new StreamReader(stream, Encoding.UTF8))
        {
            body = await streamReader.ReadToEndAsync();
        }
}

[AuditServiceMethod] 是我的审核请求、响应和错误日志方面。 有什么好的解决方法可以在 Azure 函数中多次获取 body 吗??

【问题讨论】:

    标签: azure aop azure-functions azureservicebus


    【解决方案1】:

    您需要clone BrokeredMessage 并使用克隆而不是原始消息。

    【讨论】:

    • 完美答案!
    猜你喜欢
    • 2020-10-25
    • 2017-08-18
    • 2020-08-03
    • 2015-07-02
    • 2015-10-02
    • 2016-04-20
    • 2013-04-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多