我有一个在 heroku 上运行的应用程序,它为用户提供日历提要。这曾经在谷歌日历上工作,但几个月前它突然停止工作。人们无法将他们的日历添加到 gcal,并且已经在 gcal 中拥有他们的提要的用户会遇到日历不更新的问题。
我已经调试了一段时间,试图找出问题所在,并得出结论 herokuapp.com 在谷歌的某种灰色/黑名单上。这就是我得出结论的方式:
- 首先,我在本地设置应用程序,使用 localtunnel 将其暴露给 interwebz。我将 localtunnel-url 添加为日历提要,谷歌立即获取了它。
- 然后我为我的 herokuapp 设置了一个自定义域,在谷歌日历中添加了(自定义域)日历 url,它再次被立即检索和索引。
我的发现可以通过以下网址复制(在谷歌日历中,按网址添加):
- http://devoxxuk13.herokuapp.com/matches?p=[any string here] <-- 不起作用
- http://devoxxuk13.andersen-gott.com/matches?p=[此处的任何字符串] <-- 有效
(p=[any string here] 是一个 hack。谷歌已经索引了 url 的无参数版本(在它开始起作用之前)。我的应用程序忽略了这个参数,但它会让谷歌尝试检索日历,而不是从它似乎有的全局日历缓存中获取它)。
所以,我的问题是,为什么谷歌不愿意/不能从 herokuapp.com 获取日历提要?