gpt4 book ai didi

asp.net - ASP.NET(WebForms 或 MVC)应用程序中的哪个代码组件服务于图像等网站资源?

转载 作者:可可西里 更新时间:2023-11-01 15:14:26 26 4
gpt4 key购买 nike

当您的应用程序中有这样一个图像标签时:

<img src = @Url.Content("~/foo/bar.jpg") />

或者像这样:

<asp:image src = "~/foo/bar.jpg" />

或者像这样:

<input type = "image" ...>

如果这恰好是一个 ASP.NET 应用程序(Web 窗体或 MVC 与问题无关,我假设,因为提供图像的代码必须相同),哪个特定组件提供图像请求?

它是 Web 服务器(IIS 或 Visual Studio 的内部 Web 服务器)还是 Microsoft 编写的 ASP.NET HttpHandler。

我记得曾经有一个用于在 ASP.NET 2.0 中提供资源文件的处理程序。那也是提供图像的那个吗?它叫什么?

我为什么要问这个问题/我想做什么

我有一个 ASP.NET MVC 应用程序,我想编写自己的自定义 HttpHandler 或 Controller 来为静态 Assets (如图像)提供服务,以便它们得到缓存。

我打算做的事情与 http://blog.hompus.nl/2011/03/11/make-your-browser-cache-the-output-of-an-httphandler/ 几乎完全相似和 http://archive.msdn.microsoft.com/ResourceCache

我想确保如果 Microsoft 已经编写了一个,我可能需要在响应中发回 Http header 时采取一些预防措施,以便 Microsoft 的内置 httpHandler 集的 header 与那些 header 不矛盾我设置了。

最佳答案

默认情况下,所有对 ASPX 页面(包括其中的静态资源,如图像)的请求都由默认的 HttpHandler 提供服务,它是 the PageHandlerFactory class 的一个实例。 :

Instances are created dynamically to handle requests for ASP.NET files. The PageHandlerFactory class is the default handler factory implementation for ASP.NET pages.

the MSDN article on HttpHandlers and HttpModules可以看出,主要的“内置”处理程序是那些用于

  • 标准 ASP.NET 文件 (.aspx),
  • 网络服务 (.asmx),
  • 通用、非 UI 处理程序 (.ashx) 和
  • 一个用于处理跟踪 (trace.axd)。

没有专门处理图片请求的。所以你应该准备好了 =)

关于asp.net - ASP.NET(WebForms 或 MVC)应用程序中的哪个代码组件服务于图像等网站资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15359862/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com