RESTful API - gethistoricaldata
특정변수의 히스토리 데이터에 대하여 값을 요청
--------------------------------------------
Description
enuSpace 서버측에 데이터베이스의 변수 히스토리 값을 요청하는 API
--------------------------------------------
Request
HTTP Method : POST
URI : http://localhost:8080/gethistoricaldata?tagid=@043DFEDEFD. A0&duration=300&endtime=0
Query Parameters
tagid : database tagid
duration : duration time
endtime = 0 // 0->current time
Example : ?tagid=@043DFEDEFD. A0&duration=300&endtime=0
Content-Type : application/json; charset=UTF-8
--------------------------------------------
Response
Body
json file format
TIME_FORMAT : "SIM" or "SYS" -> SIM : Simulation Time, SYS : System Time
Body Example
{ "RESULT": "OK", "RESULT_CODE": "RESULT_OK", "MESSAGE": "GETHISTORICAL DATA COMPLETE", "TIME_FORMAT": "SIM", "TAGID": "@043DFEDEFD. A0", "VALUES": { "TIME":"2017-04-19 10:46:23.001" , "VALUE":"84" },{ "TIME":"2017-04-19 10:46:21.959" , "VALUE":"77" } } |
--------------------------------------------
Sample Call
JavaScript
function gethistoricaldata(tagid, duration, endtime, datalist) { var xmlHttp = new XMLHttpRequest(); var strUrl = "gethistoricaldata" ; var strParam= "tagid="+tagid+"&"+"duration="+duration+"&"+"endtime="+endtime; xmlHttp.open("POST", strUrl, false); xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8"); xmlHttp.setRequestHeader("Cache-Control","no-cache, must-revalidate"); xmlHttp.setRequestHeader("Pragma","no-cache"); xmlHttp.send(strParam); var msg = xmlHttp.responseText; var arr = JSON.parse(msg); if (arr.RESULT == "OK") { var values = arr.VALUES; if(values.length > 0) { if(arr.TIME_FORMAT == "SIM") { for(var i in values) { var recive_time = new Date(values[i].TIME).valueOf(); var sub_time = new Date("1601-01-01 00:00:00.000").valueOf(); var x = recive_time - sub_time; var y = parseFloat(Number(values[i].VALUE)); var point_data = new data_point(x, y); datalist.unshift(point_data); } } else if(arr.TIME_FORMAT == "SYS") { for(var i in values) { var x = new Date(values[i].TIME).valueOf(); var y = parseFloat(Number(values[i].VALUE)); var point_data = new data_point(x, y); datalist.unshift(point_data); } } } } else { console.log("gethistoricaldata: 받아오기 에러"); } } |
'enuSpace for mars(2017) > RESTful API and JSON' 카테고리의 다른 글
RESTful API and JSON (enuSpace for mars) (0) | 2017.04.19 |
---|---|
RESTful API - getpicturevalue (enuSpace for mars) (0) | 2017.04.19 |
RESTful API - setvalue_package (enuSpace for mars) (0) | 2017.04.19 |
RESTful API - getvalue_package (enuSpace for mars) (0) | 2017.04.19 |
RESTful API - setvalue (enuSpace for mars) (0) | 2017.04.19 |