【问题标题】:Can I modify response content before the formatter processes it?我可以在格式化程序处理之前修改响应内容吗?
【发布时间】:2014-11-09 12:17:32
【问题描述】:

我有一个 ASP.NET Web Api 2.2 项目,我想从所有控制器中获取响应并将其包装在带有一些元数据的包装器对象中。然后我希望我的自定义媒体类型格式化程序(特别是我的自定义 JsonMediaTypeFormatter)使用该额外的元数据来执行一些自定义序列化。

我尝试创建一个委托处理程序来进行包装,但这发生在管道中的格式化程序之后。是否有另一种方法来拦截来自所有控制器操作的响应,将响应包装在另一个对象中,然后让自定义 JsonMediaTypeFormatter 处理它?

【问题讨论】:

    标签: asp.net-web-api asp.net-web-api2 webapp2


    【解决方案1】:

    您是否尝试过使用 ActionFilterAttribute,您可以在其中覆盖 OnActionExecuting/OnActionExecuted 方法以使用 actionContext 处理/生成操作响应。

    看看this的好文章。

    另请参阅this 问题。

    希望对您有所帮助。

    【讨论】:

    • 谢谢。这正是我最终要做的。
    猜你喜欢
    • 2012-04-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-02
    • 1970-01-01
    • 2013-01-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多