在ASP.NET应用程序中使用HttpHandlers可以进行哪些不同的自定义?

时间:2011-03-10 15:59:39

标签: asp.net httphandler ihttphandler

深入研究HttpHandlers我发现它们提供了自定义ASP.NET应用程序的好方法。我是ASP.NET的新手,我想了解使用HttpHandlers可能实现的不同自定义。很多网站都在讨论它们是如何实现的,但是除了ASP.NET已经使用HttpHandlers提供的一些用例之外,知道一些用例会很好。

2 个答案:

答案 0 :(得分:2)

ASPX页面为基于表单的网页提供了一个基本模板(可以这么说)。默认情况下,它输出text/html并允许为这些元素轻松添加表单元素和事件处理。

相反,HttpHandler被剥离到骨骼。它就像是HTTP请求的空白平板。因此,HttpHandler适用于不一定需要Web表单的许多类型的请求。您可以使用HttpHandler输出动态图像,JSON或许多其他MIME类型结果。

几个例子:

1)您有一个需要进行AJAX调用的页面,该调用将返回JSON响应。可以设置HttpHandler来处理此请求并输出JSON。

2)您有一个链接到PDF文档的页面,这些文档作为二进制blob存储在数据库中。可以设置HttpHandler来处理此请求,并将二进制blob作为字节流输出,其内容类型为PDF MIME类型。

答案 1 :(得分:1)

检查此页面以获取一个很好的示例和代码,说明您可能想要自定义它们的原因:http://dotnetslackers.com/articles/aspnet/Range-Specific-Requests-in-ASP-NET.aspx基本上,当您想要服务某些文件但不允许通过普通网址访问它们时,可以使用它(安全)。

相关问题