哪个页面调用Handler ashx

时间:2013-04-29 14:42:14

标签: asp.net handlers

我想知道哪个页面和哪个URL调用了我的Handler .ashx,这可能吗?

我需要这个,因为我有一个Handler从数据库调用和转换图像,但我的一些图像URL没有传递正确的查询参数(它们不存在于数据库中),我需要的是什么调用以查看该参数的图像的URL。

2 个答案:

答案 0 :(得分:2)

为什么不直接使用 context.Request.UrlReferrer?

答案 1 :(得分:0)

快速解决您当前的问题是致电(在C#中)

public void ProcessRequest(HttpContext context){}方法中,添加以下3行。

       IServiceProvider provider = (IServiceProvider)context;
       HttpWorkerRequest worker = (HttpWorkerRequest)provider.GetService(typeof(HttpWorkerRequest));
       String referer = worker.GetKnownRequestHeader(HttpWorkerRequest.HeaderReferer);

这将为您提供调用处理程序的页面的URL。

为了更进一步,理想情况下应该实现错误处理以处理任何丢失的图像。