此Web应用程序发送包含URL链接的电子邮件。
作为服务器上的计划任务运行的.EXE(在“支持”Web应用程序并连接到同一数据库)发送包含URL链接的电子邮件。 电子邮件内容的性质本质上是一个“提醒”;点击时的链接本质上是一个确认信号“完成”。
点击电子邮件中的链接会在目标.ASPX页面上执行两项操作:
消除浏览器发送的成功消息是不好的设计?
我正在考虑打开网页只是为了宣布“成功”是不需要的。如果目标URL被替换为没有用户界面的东西(例如HTTPHandler,webservice),那么我认为发回给同一用户的电子邮件确认“成功”就足够了。
然而,这种方法的一部分“感觉很尴尬”,我想因为通常点击电子邮件中的链接会导致网页打开。鉴于这些要求,这是否会消除浏览器的糟糕设计?
更新 - 2014年10月17日:
请参阅:Submit to HttpHandler results in RequestType GET instead of POST
答案 0 :(得分:1)
更新
实际上,基于GET
请求进行状态更改是不好的设计。许多电子邮件系统(和病毒扫描软件)将遵循该链接,以确定是否应该隔离它。
不要紧,导致状态发生变化的GET
请求几乎与网络应该如何工作无关。
他们应该点击链接,然后邮件程序打开浏览器。然后,您会显示一个页面,要求他们通过单击按钮来确认操作。该按钮会生成POST
请求,然后您可以执行此操作。
最后,我还不完全确定如何消除浏览器。邮件程序检测到它是一个链接,并在用户点击它后打开浏览器。这与打开word文档或zip文件的方式没有什么不同。电子邮件程序只询问操作系统应该处理该操作的程序,并将其传递给该程序。
随着您的更新,我认为有一个更清洁的方式。但是,这取决于将接收消息的电子邮件客户端的功能。应该对绝大多数人都有好处。
在电子邮件正文中,不是发送链接,而是包含一个HTML表单,其中包含一个执行回发到服务器的按钮。有关其他公司如何做到的样本,请参阅此(link)。
这样一来,行动就是一步而不是两步而你并没有做错事(tm)。