我注意到从Mailchimp发送的电子邮件中的以下模式:
他们想
通过单击使用户取消订阅电子邮件(=单击电子邮件中的链接,而无需在网站上进行进一步确认)
但阻止打开电子邮件中提到的URL的邮件检查机器人(gmail,防病毒软件...)以意外取消订阅用户的权限
他们现在所做的非常聪明:
取消订阅页面确实包含一个取消订阅按钮(这样,机器人只能看到该页面,而不能仅通过访问url进行破坏性操作)
但是当一个真实的人打开页面时,他们会自动单击按钮,因此用户只会看到一个快速的加载指示器,然后看到成功退订的确认。
我想实现类似的功能,但我不确定如何实现-仅用JavaScript'单击'按钮就足够了吗? 这将假定没有链接检查机器人会运行javascript,并且我不确定这是我可以做的假设。
或者,还有其他方法可以检测到真实的人在看页面吗?就像检测鼠标移动一样?还是滚动?
感谢您的想法! :)
答案 0 :(得分:0)
您检查鼠标的想法非常聪明。如果同时发生onmoousemove事件和onmouseover事件,则可以检测是否有人移动了鼠标以单击按钮。确认后,您可以将其与取消订阅事件一起发送。您可能必须捕获一些真实数据,但我认为,仅查看路径中的差异就足以拒绝机器人,除非该机器人专门为退订某人而设计。
但是,我将使用诸如硒之类的前端测试框架进行测试,以确保您可以拒绝来自自动化系统的点击。