Как сформировать запрос к API из условий JSON
Есть такой пример запроса API исходя из которого select формируется условиями выбора элементов
{
“cmd”: “get_data_req”, //запрос
“devEui”: string, //название прибора
“select”?: //условия
{
“date_from”?: integer, //начальная дата
“date_to”?: integer, //конечная дата
“begin_index”?: integer, //с какого элемента начинается
“limit”?: integer, //количество данных
}
}
в js запрос выглядит следующим образом
var tempObj = new Object();
tempObj.cmd = "get_data_req";
tempObj.devEui = devEui;
if (date_from!=undefined||date_to!=undefined||limit!=undefined) //в случае если имеются дополнительные параметры для запроса
{
tempObj.select = new Object();
if (date_from!=undefined)
{
tempObj.select.date_from=date_from;
}
if (date_to!=undefined)
{
tempObj.select.date_to=date_to;
}
if (limit!=undefined)
{
tempObj.select.limit=limit;
}
if (port!=undefined)
{
tempObj.select.port=port;
}
}
my_ws.send(JSON.stringify(tempObj));
мой код, msg переменная для сериализации json и получение данных с определенными условиями, условия так же могут быть нулевыми
var msg = new
{
cmd = "get_data_req",
devEui = deviceListView.SelectedItem,
select = new
{
date_from = Convert.ToString(DatetimeToUnix(startDate.SelectedDate.Value)),
limit = Convert.ToInt32(limitCB.Text)
}
};
well.Text = limitCB.Text;
ws.Send(JsonConvert.SerializeObject(msg));