繁体   English   中英

如何从另一个网页获取值并将其存储为变量?

[英]How can I get a value from another webpage and store it as a variable?

我正在使用石墨来获取统计数据,并希望为变量绘制一个量规。 石墨可以使用json吐出值:

[{"target": "snmp.ssbSubstation.realEnergy.1", "datapoints": [[4511552439.0, 1417540920]]}]

或原始:

snmp.ssbSubstation.realEnergy.1,1417540860,1417540920,60|4511552439.0

这就是返回源的整个一行,具体取决于您指定的是json还是raw。 网址的格式类似于http://<graphite server>/render?target=snmp.ssbSubstation.realEnergy.1&format=raw&from=-1min

无论哪种方式,我4511552439.0获取4511552439.0并将其设置为量规的值,并在grafana的html面板中进行渲染。 有没有很简单的方法可以做到这一点?

您可以使用JSONP ajax请求执行此操作。 请查看下面的示例(作为您应用的起点)。

您还可以在此处找到与jsFiddle相同的演示。

也许可以更好地进行数据访问。 二维访问看起来有些奇怪,但它可以工作。

我已经用了mocky.io来模拟你的数据。

 // data format [{"target": "snmp.ssbSubstation.realEnergy.1", "datapoints": [[4511552439.0, 1417540920]]}] // http://www.mocky.io/v2/547df7d558eb49190856a759 (function ($) { var url = 'http://www.mocky.io/v2/547df7d558eb49190856a759'; // mocky.io demo source var jsonCallback = function (data) { var gauge = data[0].datapoints[0][0]; console.log(gauge); $('#data').html(JSON.stringify(data, null, 2)); $("</p>").text('value for gauge ' + gauge).appendTo('#data'); }; $.ajax({ type: 'GET', url: url, contentType: "application/json", dataType: 'jsonp' }).done(jsonCallback) .fail(function (xhr) { alert("error" + xhr.responseText); }); })(jQuery); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <pre id='data'></pre> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM