Нажмите гиперссылку в Почте - PullRequest
1 голос
/ 09 января 2012

Я работаю на веб-сайте с Asp.Net (C #), и у меня возникла такая проблема:

Я отправлю письмо на 20 человек, и в нем будет ссылка.Если пользователь нажимает на ссылку, которую я хочу где-то сохранить (база данных, текстовый файл и т. Д.), Этот почтовый адрес пользователя.

Как я могу это сделать?

Спасибо,

Джон

Ответы [ 3 ]

4 голосов
/ 09 января 2012

Поскольку вы уже знаете адрес электронной почты человека (поскольку вы отправили ему письмо), вы можете включить параметр строки запроса в привязку, которая является частью почтового сообщения:

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

Когда человек, просматривающий это письмо, нажимает на ссылку, будет вызвана страница foo.aspx на вашем сайте и передано электронное письмо.С этого момента вы можете делать с этим письмом все, что захотите (сохранить его в базе данных, текстовом файле, как хотите).

По понятным причинам вы можете зашифровать этот адрес электронной почты, чтобы избежать его изменения ипередавая другой адрес.В зависимости от уровня безопасности, который вам требуется, и от чувствительности изменения этого электронного письма, вы можете использовать разные алгоритмы шифрования.

1 голос
/ 09 января 2012

Вам нужно будет перейти на страницу ASPX и вставить адрес электронной почты пользователя в эту ссылку, закодированный в URL.

Например, вы можете отправить свое письмо пользователю user@domain.com по следующей ссылке:

<A HREF="linkup.aspx?id=user@domain.com">Click here</A>

Тогда ваша страница linkup.aspx может легко прочитать входной параметр и сохранить данные в любом месте.

0 голосов
/ 09 января 2012

Я не думаю, что можно извлечь адрес электронной почты из заголовков http, потому что я думаю, что приложения электронной почты не включают адрес электронной почты пользователя в запрос http.

Единственный возможный способ сделать это - указать адрес электронной почты, на который вы отправили сообщение в базу данных, и специальный ключ рядом с адресом электронной почты.Затем вы отправляете этот конкретный ключ в качестве переменной get в URL нужным пользователям, а когда они щелкают по ссылке, сравнивают переменную get с базой данных и получают адрес электронной почты пользователя, который щелкнул ссылку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...