如何为 Heroku API 实现维护模式

Posted

技术标签:

【中文标题】如何为 Heroku API 实现维护模式【英文标题】:How to implement a maintenance mode for Heroku API 【发布时间】:2014-06-18 09:54:07 【问题描述】:

我想使用maintenance mode on Heroku。

但是对于 API,维护模式似乎不起作用。我的 API 调用已停止,因为不存在标头“Access-Control-Allow-Origin”。因此无法知道 API 是否处于维护模式,或者它是否只是没有响应。

当应用是 API 时,有没有办法使用 Heroku 维护模式?

【问题讨论】:

如果您的应用程序处于维护模式,则它无法接收任何 Web 请求。我不确定我是否完全理解您的问题。 当您直接访问 html 应用程序时,维护模式会提供 HTML 页面。我不能对来自 API 客户端的 JSON 请求做类似的事情吗?客户端没有收到 503,而是收到错误。 是的,您可以使用自定义维护页面 (devcenter.heroku.com/articles/…),它可以返回 JSON 数据包。 【参考方案1】:

目前,很遗憾没有。当您设置自定义维护页面时,它会作为 iframe 嵌入到 Heroku 提供的 HTML 页面中。正如您所确定的,CORS 标头未设置,因此您的 API 客户端甚至不会获取该页面。

见Is there a way to have a Heroku error/maintenance url served directly without the iframe

【讨论】:

以上是关于如何为 Heroku API 实现维护模式的主要内容,如果未能解决你的问题,请参考以下文章

在asp.net核心中实现“维护模式”

如何用vSphere PowerCLI命令实现主机维护模式

如何为VMware ESXi/ESX 4.x安装第三方驱动程序

如何为VMware ESXi/ESX 4.x安装第三方驱动程序

zabbix api 设置维护模式

有没有办法在没有 iframe 的情况下直接提供 Heroku 错误/维护 url