Java 未执行BOOMR.subscribe函数
这是我的代码片段 这是我的form.htmlJava 未执行BOOMR.subscribe函数,java,javascript,html,boomerang,Java,Javascript,Html,Boomerang,这是我的代码片段 这是我的form.html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <h1>Beer Selection Page</h1> <form method="post" actio
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>Beer Selection Page</h1>
<form method="post" action="SelectBeer.do">
Select beer characteristics
<p>
Color: <select name="color" size="1">
<option value="light">light</option>
<option value="amber">amber</option>
<option value="brown">brown</option>
<option value="dark">dark</option>
</select> <br>
<br>
<input type="submit" value="Submit Beer" >
</form>
<form action="BandwidthCalc.do">
<br>
<br>
<input type="submit" value="Calculate Bandwidth" >
</form>
</body>
</html>
这是我的带宽.jsp文件
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Bandwidth calculation</title>
</head>
<body>
This is bandwidth page!! <br>
<script src="./js/jquery-2.1.3.min.js" type="text/javascript"></script>
<script src="./Boomerang/boomerang.js" type="text/javascript"></script>
<script src="./js/testBeacon.js" type="text/javascript"></script>
<div id="results">
</div>
</body>
</html>
这是我的testBeacon.js文件
var bw=null,be=null,lat=null,laterr=null;
BOOMR.init({
user_ip: '127.0.0.1',
});
BOOMR.subscribe('before_beacon', function(o) {
var html = "", t_name, t_other, others = [];
if(!o.t_other) o.t_other = "";
for(var k in o) {
if(!k.match(/^(t_done|t_other|bw|lat|bw_err|lat_err|u|r2?)$/)) {
if(k.match(/^t_/)) {
o.t_other += "," + k + "|" + o[k];
}
else {
others.push(k + " = " + o[k]);
}
}
}
if(o.t_done) { html += "This page took " + o.t_done + " ms to load<br>"; }
if(o.t_other) {
t_other = o.t_other.replace(/^,/, '').replace(/\|/g, ' = ').split(',');
html += "Other timers measured: <br>";
for(var i=0; i<t_other.length; i++) {
html += " " + t_other[i] + " ms<br>";
}
}
if(o.bw) { html += "Your bandwidth to this server is " + parseInt(o.bw*8/1024) + "kbps (±" + parseInt(o.bw_err*100/o.bw) + "%)<br>"; }
if(o.lat) { html += "Your latency to this server is " + parseInt(o.lat) + "±" + o.lat_err + "ms<br>"; }
var r = document.getElementById('results');
r.innerHTML = html;
if(others.length) {
r.innerHTML += "Other parameters:<br>";
for(var i=0; i<others.length; i++) {
var t = document.createTextNode(others[i]);
r.innerHTML += " ";
r.appendChild(t);
r.innerHTML += "<br>";
}
}
});
当我运行这个BOOMR.subscribe函数时,它没有被执行。我不明白为什么?我已经使用link包含了Boomerang文件夹您使用的Boomerang没有任何插件,因此无法运行。自述文件顶部附近有以下文本: 你必须包括至少一个插件,它不必是rt,否则灯塔将永远不会被调用
你们有并没有用必要的插件构建回飞棒?让我们看看你的boomerang.js文件是什么样子的。这是我添加的boomerang.js插件,它位于boomerang的plugins文件夹中,即bw.js,但现在我在它上面调用init方法,即BOOMR.init。上面写着未捕获的参考错误,Boomer对象未初始化我认为你应该把这个问题转移到boomerang问题列表中:我得到的数据变化太大了,即在同一页上反复计算的带宽,这与boomerang结果有很大的不同。当我加载回飞棒页面时,它给出了大约5917kbps±59%的带宽,我的结果给出了从6006kbytes/sec到277238kbytes/sec的各种范围。你能告诉我为什么会有这么大范围的结果以及错误在哪里吗?这是正常的,因为带宽测量取决于测试运行时网络上发生的一切。此外,yahoo.github.io上的页面已经过时4年了。您应该使用位于的网站
var bw=null,be=null,lat=null,laterr=null;
BOOMR.init({
user_ip: '127.0.0.1',
});
BOOMR.subscribe('before_beacon', function(o) {
var html = "", t_name, t_other, others = [];
if(!o.t_other) o.t_other = "";
for(var k in o) {
if(!k.match(/^(t_done|t_other|bw|lat|bw_err|lat_err|u|r2?)$/)) {
if(k.match(/^t_/)) {
o.t_other += "," + k + "|" + o[k];
}
else {
others.push(k + " = " + o[k]);
}
}
}
if(o.t_done) { html += "This page took " + o.t_done + " ms to load<br>"; }
if(o.t_other) {
t_other = o.t_other.replace(/^,/, '').replace(/\|/g, ' = ').split(',');
html += "Other timers measured: <br>";
for(var i=0; i<t_other.length; i++) {
html += " " + t_other[i] + " ms<br>";
}
}
if(o.bw) { html += "Your bandwidth to this server is " + parseInt(o.bw*8/1024) + "kbps (±" + parseInt(o.bw_err*100/o.bw) + "%)<br>"; }
if(o.lat) { html += "Your latency to this server is " + parseInt(o.lat) + "±" + o.lat_err + "ms<br>"; }
var r = document.getElementById('results');
r.innerHTML = html;
if(others.length) {
r.innerHTML += "Other parameters:<br>";
for(var i=0; i<others.length; i++) {
var t = document.createTextNode(others[i]);
r.innerHTML += " ";
r.appendChild(t);
r.innerHTML += "<br>";
}
}
});