如何记录在电子邮件中单击 link 的用户的电子邮件地址?

How do I record the email address of a user that clicks a link in an email?

因此,我正在向客户发送一封电子邮件,询问他们对我的服务的满意度。我想将他们的答案记录在数据库中以供分析。 有两个按钮:赞,不赞。

这两个按钮都会将用户带到 Web 应用程序中的不同 Web 表单。 两个网络表单看起来相同(他们只是说谢谢)。但是在两个不同的网络表单的页面加载中,如果用户访问了竖起大拇指 link 或不竖起大拇指 link.

,它将插入到我的数据库中 我还希望能够记录在我的数据库中单击 link 的电子邮件地址。 有人知道怎么做吗?



这是我要插入的 table:

CREATE TABLE emails(
  ID INT IDENTITY PRIMARY KEY,
  Cust nvarchar(max) not null,
  Rating nvarchar(max) not null,
  Points int not null,
  UpdateDate Datetime not null,
  UpdateUser nvarchar(max)  --This is the field I want to record the email address in!
  );

您必须向网络表单 link 添加一个 GET 参数,其中包含预期目的地的电子邮件地址。是的,这提供了无法安全地识别用户的继承安全风险,因此您还可以生成秘密令牌以包含在请求中。但是,由于电子邮件的工作方式,它可能总是被欺骗。

http://contoso.com/Email/Subscription/?action=thumbsdown&email=barbara@contoso.com&token=7A8E1A6B-13F9-4292-BFB3-9D199E7FB96D

http://contoso.com/Email/Subscription/?action=thumbsup&email=barbara@contoso.com&token=7A8E1A6B-13F9-4292-BFB3-9D199E7FB96D

或者,如果您想帮助提供基本安全性,请将其设为 HTTPS 请求。

https://contoso.com/Email/Subscription/?action=thumbsdown&email=barbara@contoso.com&token=7A8E1A6B-13F9-4292-BFB3-9D199E7FB96D

https://contoso.com/Email/Subscription/?action=thumbsup&email=barbara@contoso.com&token=7A8E1A6B-13F9-4292-BFB3-9D199E7FB96D