有没有办法观看外部文件,当内容发生变化时,会触发一些事件?
例如,我有外部API,我想看它。当API响应内容发生变化时,立即触发某些事件。
另一个例子 - 我正在向API服务器发出HTTP GET / POST请求。 API返回带有一些数据的JSON - 例如{"song": "some song name", "timestamp": "123121212"}
。此API返回歌曲,当前正在播放的电台。当另一首歌开始播放时,API响应内容会更新。
现在我正在使用shell和PHP更新歌曲 - 我每隔10秒向API服务器发出请求,如果有任何更改(我正在记录对数据库的响应),PHP会在数据库和socket.io上更新它(和Redis)向客户展示。
我不想每10秒发出一次请求,所以有什么方法可以看外部文件吗?
由于
答案 0 :(得分:0)
不幸的是,如果远程API没有提供任何机制让您收到某些更改的通知(例如通过调用您控制的URL),那么轮询是您唯一的选择。
也许在你的情况下,你可以得到当前歌曲的持续时间,这首歌中的当前位置,并等待歌曲的结束提出新请求?例如,如果您知道永远不会放弃(持续时间3:32)正在播放并且当前时间是2:32,那么您可以在大约1分钟内安排下一次API调用。< / p>