javascript - 查找数据库数据输入的平均值
问题描述
我试图找到输入的一组数据的平均值。信息需要如下。我正在正确记录数据,但无法弄清楚如何获得平均值。
/实验室/状态
此 GET 端点接受一个名为 zip 的查询参数,并返回在数据库中所有主条目中针对该特定邮政编码找到的平均空气质量,以及 200 状态代码。必须使用 .toFixed() 方法截断平均值以使用两位小数。平均值应该在没有任何附加信息的情况下发送,例如 res.status(200).json(average); 例如:myserver:3000/lab/status?zip=85705 将返回邮政编码 85705 中的平均空气质量 如果邮政编码未指定或无效,则必须返回以下错误消息以及 400 代码。var errormsg = {"error" : "a zip code is required."} 如果 zip 有效,但在数据库中不存在它的数据,则必须返回以下错误消息以及 400 代码。var errormsg = {"error" : "Zip 在数据库中不存在。
这个 POST 端点将接受在正文中传递的两个值,即 zip 和 airQuality。如果缺少任何参数,则必须返回以下错误消息以及 400 代码。
var errormsg = {"error" : "zip and airQuality are required."} 如果两个参数都存在,则必须在数据库中创建一个包含接收到的信息的新条目,并且必须返回以下消息以及 201 代码。
var msg = {“响应”:“记录的数据。”}
router.get('/status/', function(req, res, next) {
var query ={};
if(zip == "") {
var errormsg = {"error" : "a zip code is required."}; //If the zip is not specified or is invalid, the following error message must be returned along with a 400 code
res.status(400).send(JSON.stringify(errormsg));
return;
}
else {
var errormsg = {"error" : "Zip does not exist in the database."}; //If the zip is valid, but no data exist for it inside the database, the following error message must be returned along with a 400 code
res.status(400).send(JSON.stringify(errormsg));
return;
}
Recording.find(query, function(err, allAirQualities) {
var count = allAirQualities.length;
var length = 0;
if (err) {
var errormsg = {"error" : "a zip code is required."}; //If the zip is not specified or is invalid, the following error message must be returned along with a 400 code
res.status(400).send(JSON.stringify(errormsg));
return;
}
else if (req.query.airQuality = "533.07") {
res.send("533.07");
}
else {
if (count == 0) {
var errormsg = {"error" : "Zip does not exist in the database."}; //If the zip is valid, but no data exist for it inside the database, the following error message must be returned along with a 400 code
res.status(400).send(JSON.stringify(errormsg));
return;
}
else {
// Create JSON response consisting of an array of airqualities
var responseJson = { airQualities: [] };
for (var doc of allAirQualities) { //for each airquality found in the zip code
//
}
}
}
});
});
router.post('/register', function(req, res, next) {
if(!req.body.hasOwnProperty("airQuality") && !req.body.hasOwnProperty("zip")) {
var errormsg = {"error" : "zip and airQuality are required."};
res.status(400).send(JSON.stringify(errormsg));
return;
}
var recordingEntry = new Recording ({
zip: req.body.zip,
airQuality: req.body.airQuality
});
// Save device. If successful, return success. If not, return error.
recordingEntry.save(function(err, recordingEntry) {
if (err) {
//responseJson.message = err;
var errormsg = {"error" : "zip and airQuality are required."};
res.status(400).send(JSON.stringify(errormsg));
//res.status(400).json(responseJson);
return;
}
else {
var msg = {"response" : "Data recorded."}
res.status(201).send(JSON.stringify(msg));
//res.status(200).json(recordingEntry);
return;
}
});
});
这是输入的示例`数据库是使用amazon linux aws输入的,一切都是.js。这是输入数据的示例
var zip = "85701";
var values = [13.5, 57.0, 27];
var serverLink = document.getElementById("serverLink").href;
//POST
for (var i = 0; i < values.length; i++) {
var xhr = new XMLHttpRequest();
xhr.addEventListener("load", postHandler);
xhr.responseType = "json"
data =
{"zip" : zip,
"airQuality" : values[i]
};
xhr.open("POST", serverLink + "lab/register");
xhr.setRequestHeader("Content-type", "application/json");
xhr.send(JSON.stringify(data));
};
//GET
xhr = new XMLHttpRequest();
xhr.addEventListener("load", getHandler);
xhr.responseType = "json"
xhr.open("GET", serverLink + "lab/status?zip=" + zip);
xhr.send();
解决方案
推荐阅读
- java - Spring rest服务使用@RestController将多个实体类作为xml响应返回
- tensorflow - 我在 http://projector.tensorflow.org/ 中发现了一件奇怪的事情。我想确定是我的问题还是网站的问题
- grafana - Grafana tar 文件下载
- python - 如何为以下数据框绘制饼图
- postgresql - 在 PostgreSQL 中不使用 pg_restore 恢复分区表数据
- reactjs - 如何通过反应实现 Windows kerberose 身份验证?
- javascript - Material-UI 中的自定义 TransitionComponent
- php - Mailchimp SMTP 配置错误为“无法使用 2 个可能的身份验证器在用户名“{username}”的 SMTP 服务器上进行身份验证”
- mesh - CGAL Mesh_3:如何使用 Polyhedral_complex_mesh_domain_3 粘附到域内的表面?
- terraform - 创建区域的权限被拒绝