Javascript 使用PHP更新实时数据
我有一个API,它工作得很好,但我希望它是实时的,定期从API获取数据,并在我的html代码中显示 我只需要从我最开始的地方得到一些提示。Javascript、Ajax 任何线索都将不胜感激 我的PHP/HTML:Javascript 使用PHP更新实时数据,javascript,php,ajax,api,Javascript,Php,Ajax,Api,我有一个API,它工作得很好,但我希望它是实时的,定期从API获取数据,并在我的html代码中显示 我只需要从我最开始的地方得到一些提示。Javascript、Ajax 任何线索都将不胜感激 我的PHP/HTML: <h4>Cpu Load</h4> <span class="text-muted"><?php echo "" . $first['cpu-load'] . " %" . ""; ?></span> 输出2%
<h4>Cpu Load</h4>
<span class="text-muted"><?php
echo "" . $first['cpu-load'] . " %" . "";
?></span>
输出2%或者其他什么。刷新时,页面将更新新值
我的PHP API:
<?php
require('includes/routeros_api.class.php');
$API = new RouterosAPI();
$API->debug = false;
if ($API->connect('MYIP', 'USER', 'PASS')) {
$ARRAY = $API->comm("/system/resource/print");
$first = $ARRAY['0'];
$API->disconnect();
}
?>
使用setInterval函数在每个特定时间查询API:
对我来说,最方便的方法是通过数据绑定使用Vue和Vue资源,在查询API和更改数据后,页面将重新呈现,而不刷新整个页面。为了保持简单,您可以创建一个包含ajax调用的函数。 您应该查看.ajaxjquery的用法,但这给了您一个想法
function ajaxQuery(){
// some stuff inside here to perform call
$.ajax({
url: 'your-file.php',
dataType: 'what ever data type you expect from server...',
success: function(data) {
// this is where i would normal have an id setup to update
// a specific textbox or form field...
}
});
}
然后,您必须在页面的某个位置使用javascript定时器函数setInterval:
setInterval(ajaxQuery(), 2000);
您可以使用带有setInterval函数的javascript计时器每x秒运行一次。确保在其中实现ajax调用。最好在API中返回json。为了让它成为现实,您可以使用Ajax定期从API获取数据,并使用它更新DOM。还有一种不好的方法是用标题刷新页面:headerRefresh:2;函数重载{$'uptime.load'includes/functions/uptime.php';}@user2720970是的,这是最简单的解决方案