【发布时间】:2016-06-30 10:37:56
【问题描述】:
我正在为 GET 方法编写一个 Web API。此方法将返回 JSON 对象作为响应。我需要一个动作过滤器方法或一个在浏览器成功接收到响应时自动调用的事件。
【问题讨论】:
-
您需要在服务器端还是客户端(即浏览器)上进行此事件?如果在服务器上,定义“成功接收”。
-
我在服务器端需要它。不在客户端。
-
然后定义“成功接收”。服务器如何确定这意味着什么?正如@bwyn 建议的那样,一种选择是让客户端决定成功意味着什么,并让他们通过额外的调用通知服务器。
-
Kirsh,我会说清楚的。当客户端成功收到响应时,我需要将响应数据存储在数据库表中。如果这可以由客户端确定,则客户端必须调用另一种 API 方法,说明客户端已成功接收到响应。在这一点上,我需要在服务器端再次重新生成响应数据,我需要将它保存在会话或其他地方。当客户端成功收到响应时,我可以在服务器端获取事件或操作过滤器,而不是做所有这些事情吗?
-
你似乎没有抓住重点。服务器很容易知道它已经向客户端发送了一条消息。服务器不可能知道的是客户端是否“成功接收”,无论这意味着什么,除非客户端告诉服务器。再说一遍:请定义“成功接收”。
标签: api events model-view-controller response action-filter