2012-01-09 72 views
1

我的工作與Asp.Net(C#)在網站上,我有這樣一個問題:單擊超鏈接在郵件

我會收到一封電子郵件20人,有郵件的鏈接。如果用戶點擊鏈接我想保存在某個地方(數據庫,文本文件等)這個用戶的郵件地址。

我該怎麼辦?

感謝,

約翰

+0

基本上你想要點擊鏈接的用戶的電子郵件列表,對吧? – AksharRoop 2012-01-09 11:09:36

+0

是的,這是正確的 – John 2012-01-09 11:12:06

回答

4

既然你已經知道的人的電子郵件地址(因爲您發送了一封電子郵件給他),你可以包含一個查詢字符串參數是部分錨郵件:

<a href="http://example.com/foo.aspx?email=john.smith%40foo.com">Click me</a> 

當觀看此郵件的人的鏈接點擊網站上的foo.aspx頁面被稱爲並通過電子郵件。從那裏你可以做任何你想用這封電子郵件(保存在數據庫,文本文件,任何你想要的)。

由於顯而易見的原因,您可能需要對此電子郵件地址進行加密,以避免他更改並傳遞其他地址。根據您所需的安全級別以及更改此電子郵件的敏感性,您可以使用不同的加密算法。

+0

謝謝Darin。 :) – John 2012-01-09 11:18:07

1

您將不得不鏈接到ASPX頁面,並將該用戶的電子郵件地址嵌入該URL中編碼的鏈接中。

例如,您可以發送郵件到用戶[email protected]的鏈接是這樣的:

<A HREF="[email protected]">Click here</A> 

然後你linkup.aspx頁面可以輕鬆讀取輸入參數,並保存在任何地方它想要的數據。

+0

謝謝羅伊。我會嘗試。 :) – John 2012-01-09 11:17:51

0

我不認爲有可能從http頭獲取電子郵件地址,因爲我認爲電子郵件應用程序不包含用戶的電子郵件地址在http請求中。

我能想到的唯一可能的方式是包括您在數據庫中發送郵件的電子郵件地址以及電子郵件地址旁邊的特定密鑰。然後,您將此特定密鑰作爲url中的get變量發送給您想要的用戶,並且當他們單擊該鏈接時,將get變量與數據庫進行比較,並檢索單擊該鏈接的用戶的電子郵件地址。