我们本土的 CMS 创建日历提要,其中包含一个青年运动队的单个赛季的日程安排。我们为最终用户提供 URL 以在他们的设备(或他们的软件程序)上使用 feed,每年有成千上万的人这样做。
问题在于,对于大多数程序和设备而言,添加日历订阅的 UI 相对较好,但在不再需要时删除这些提要 - 并没有那么多。
对我们来说,这造成了这样一种情况,即超过 90% 的对我们服务器的日历提要请求来自日程安排早已完成的团队。
最初,我们尝试只为非当前团队返回一个空提要,但这并没有阻止设备首先发出请求(这会占用我们服务器上的资源)。它根本不足以(或根本)激励最终用户做某事。
因此,在过去的几年中,我们改为返回一个从上个月到下个月的单个事件,标题为“请删除这个过时的提要”,甚至提供了一些这样做的说明。这有点帮助,但还不够。
最近我们了解到可以将警报附加到日历提要中,因此为了尝试激发用户采取行动,我们还决定将警报附加到单个“过时”事件;每隔 3 小时重复两次的警报。这更有效,但对最终用户来说非常烦人。
所以,这就是问题所在。 我们可以在服务器上做些什么,当设备发出请求时,响应会向设备指示提要不再可用并且设备应该停止请求它?我们尝试过的其他一些事情包括:
- 返回各种 HTTP 状态码(302、301、500 等)
- 在 Feed 上设置很长的 TTL
这些似乎都没有任何效果。似乎应该有一种方法可以返回带有 HTTP 状态代码 410“Gone”的空响应,并且设备/程序应该知道该怎么做。任何/所有建议表示赞赏!