Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JSON数据记录到缓冲区并放入服务器_Javascript_Html_Json - Fatal编程技术网

Javascript JSON数据记录到缓冲区并放入服务器

Javascript JSON数据记录到缓冲区并放入服务器,javascript,html,json,Javascript,Html,Json,我有一个javascript函数,它在每一秒生成JSON数据,然后将其放到云服务器上。现在我不想实时发布,而是想把这些数据记录在一个缓冲区中,并说在n个数据日志之后,我将把它们放到云中。例如,我想在10秒内记录50个数据点,然后在服务器上加上时间戳 现在JSON数据通过var fromDatan传递。JSON数据格式为 {"values": [ { "at": "2014-08-17T12:00:00Z", "value": "15" }]} 这是一个正在通过sayvar fromDatan并

我有一个javascript函数,它在每一秒生成JSON数据,然后将其放到云服务器上。现在我不想实时发布,而是想把这些数据记录在一个缓冲区中,并说在n个数据日志之后,我将把它们放到云中。例如,我想在10秒内记录50个数据点,然后在服务器上加上时间戳

现在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代码,它正在工作:

$.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 = [];
};

让我检查一下,然后再给你回复:)我在回答中添加了一个代码,JSON较小(仅供试用,稍后将使用较大的JSON数据),但它没有按照你的代码推送数据。你能帮我纠正一下哪里有问题吗?