2010-04-09 56 views
1

我想跟蹤何時查看電子郵件,所以我想創建一個對圖像起反應的httphandler,比如每當查看acme.gif時。HttpHandler跟蹤圖像何時加載到電子郵件中

這是直截了當的嗎?

難道僅僅是一個把正確的配置設置喜歡的事:

<add verb="*" path="/images/track/acme.gif" ... /> 

這是正確的嗎?

+0

我想指出,許多電子郵件客戶端默認配置*不*加載圖像,特別是爲了防止這種類型的跟蹤。 – 2010-04-09 14:27:00

+0

休,好點但是很好,你只能這麼做。 – Blankman 2010-04-09 14:30:30

+0

我不認爲這會非常準確。那些因爲客戶端電子郵件設置而只接收電子郵件的人呢? – 2010-04-09 14:31:06

回答

2

我相信這個請求不會由asp.net處理,直到你爲它設置IIS爲止。默認情況下,* .gif是由IIS直接處理的靜態資源。爲什麼不只是簡單地使用HttpHandler而不註冊自定義擴展?

你可以在IMG標記像這樣使用它:

<img src="http://yourserver/YourHandler.ashx" /> 
+0

啊..好主意。 – Blankman 2010-04-09 15:31:55

0

據我所看到的,你有兩個選擇。將圖像源更改爲動態URL,或使用有效的圖像路徑並將這些請求轉發給ASP.NET。

我們使用後一種方法,並通過IIS中的應用程序配置通配符映射將所有圖像請求轉發到ASP.NET ISAPI DLL,並從那裏開始工作。我們有URL重寫以將請求轉發到特定頁面,並且我們在URL參數中包含用於標識特定電子郵件收件人的參數。我們跟蹤打開的電子郵件,然後在回覆中寫出有效的圖像。

由於某些原因,已打開任何跟蹤電子郵件的方法都無法打開。圖像關閉的用戶,純文本電子郵件閱讀器以及代理級緩存。但是,這不能輕易完成的評論是廣泛的。