我有一个 javascript 函数,它每隔一秒生成 JSON 数据,然后将其 PUT 到云服务器。现在我不想实时发布,而是想将这些数据记录在缓冲区中,并说在 n 个数据日志后我将 PUT 到云。例如,我想在 10 秒内记录 50 个数据点,然后使用时间戳将 PUT 到服务器
现在 JSON 数据通过 var fromDatan
传递。 JSON数据格式为
{"values": [ { "at": "2014-08-17T12:00:00Z", "value": "15" }]}
这是一个单一的实例,它正在通过 say var fromDatan
并被放入云中。
现在我想记录 n 个 JSON 数据。即。
{ "values": [ { "at": "2014-08-17T12:00:00Z", "value": "15" }, { "at": "2014-08-18T12:00:00Z", "value": "20" }, { "at": "2014-08-19T12:00:00Z", "value": "25" } ] }
然后我将 PUT 到云端。这是我的实时 PUT 代码,它正在运行:
$.ajax({
url: "https://abcd.com",
headers: {
"X-API-KEY": "23dq3dq3ddbb16a7956e6f7a",
"Content-Type": "application/json"
},
type: "PUT",
data: fromDatan,
dataType: "JSON",
success: function(fromData, status, jqXHR) {
alert(JSON.stringify(fromData));
},
error: function(jqXHR, status) {
alert(JSON.stringify(jqXHR));
}
});
所以请让我知道如何做到这一点。帮帮我
最佳答案
每秒运行的代码应该这样做:
fromDatan.values.push({
at: timestamp,
value: value
});
if (fromDatan.values.length >= 50) {
$.ajax( {
...
});
fromDatan.values = [];
};
关于javascript - JSON 数据记录到缓冲区并 PUT 到服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25419428/