今天Twitter正在关闭我正在考虑如何在API关闭时最好地处理对API的调用。如果我使用CURL来调用他们的api,我如何使脚本快速失败并处理错误以免降低应用程序的速度?

有帮助吗?

解决方案

也许使用一种关于Twitter是否上升或下降的缓存。在数据库或服务器端文件中记录来自api的无效响应。一旦连续获得两个/三个/一些其他无效响应,请禁用对api的所有请求x个时间。

在x个时间后,尝试请求,如果它仍然按下,则再次禁用x分钟。

如果您的服务器可以运行CRON作业,请考虑制作一个脚本,每隔几分钟检查一次api是否有效。如果发现它已关闭,请禁用请求,直到它恢复为止。至少在这种情况下,服务器将进行测试,用户不必是豚鼠。

其他提示

使用 curl_setopt

curl_setopt($yourCurlHandle, CURLOPT_CONNECTTIMEOUT, '1'); // 1 second

如果您使用curl> = 7.16.2和PHP> = 5.2.3,则 CURLOPT_CONNECTTIMEOUT_MS

使用 curl_getinfo 获取cURL响应代码或内容长度和检查。

$HttpCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top