【问题标题】:Dumping response headers in MVC在 MVC 中转储响应标头
【发布时间】:2023-03-14 17:10:01
【问题描述】:

我知道如何在 MVC 中获取 request 标头,但是一旦请求完成,我如何获取 所有 response 标头并显示它们,例如,在页面上进行调试?我意识到我可以为此使用 chrome 的网络选项卡,但我很好奇。

例如,chrome 的网络选项卡将显示 8-9 个响应标头,但如果我调用 Response.Headers.AllKeys,我只会在集合中得到 2 个键,而我认为我会得到 8 个。这是为什么呢?

【问题讨论】:

  • 这就是 Fiddler 所做的,也是所有浏览器的 F12 工具。像 Fiddler 这样的调试代理提供了比浏览器更多的功能
  • IIS 在控制器执行之外添加自己的标头,所以问题是您想要所有标头还是仅 .NET 操作的标头?
  • 我想获取所有响应标头,基本上就是您在 chrome 调试器的网络选项卡的响应标头部分中看到的所有内容
  • 如果你想在页面上显示它们,你必须使用一些 Javascript,因为你无法知道自从你的应用程序设置它们以来拦截和添加/更改了哪些标题。跨度>

标签: c# asp.net-mvc http-headers response


【解决方案1】:

Fiddler 可能是最流行的工具。它是一个调试代理,可以捕获请求和响应、漂亮打印 Json、XML 内容,甚至允许您创建和发布新请求

如果您想在页面上显示标题,您可以将Glimpse 添加到应用程序。不幸的是,该项目被放弃了。它适用于 ASP.NET MVC5 项目,但没有添加新功能,也没有 .NET Core 支持。

也就是说,可用的功能非常有用 - 请求和响应标头、计时、SQL 查询、整个请求的时间线视图,包括数据库查询、异常等。

【讨论】:

  • OP 知道如何在 Chrome 开发工具中查看它们,所以我不确定这是否真的有那么大的帮助。
  • @DavidG Fiddler 比任何浏览器的工具都先进
  • 它将如何做到这一点?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-04-23
  • 2018-03-24
  • 2021-07-06
  • 2016-10-14
  • 1970-01-01
  • 1970-01-01
  • 2019-07-26
相关资源
最近更新 更多