Как передать массив в XHR.get запрос Luci openwrt?
Я пытаюсь отправить массив из JavaScript в запрос XHR.get в Люси Openwrt .
var myarray[] has some contents . for example : `myarray[] = {"1","2","3"}`
Мне нужно передать этот массив XHR.get
запросы в качестве аргументов. Как я могу передать этот массив?
Это пример кода:
XHR.get('<%=REQUEST_URI%>', {status: 2,value: myarray},
function(x, info) {
if (!info) {
location.href=location.href;
}
else {
console.log("success");
}
}
);
и в коде Lua я получаю данные этой формы:
if luci.http.formvalue("status") == "2" then
local DetailValue[] = luci.http.formvalue("value")
local fileContent = {
content = "sample1",
find = "sample2"
}
luci.http.prepare_content("application/json")
luci.http.write_json(fileContent)
return
end
Но я получаю ошибки. Это правильный способ отправки массива через XHR.get? Какие-либо предложения?
1 ответ
Решение
Вот пример для одного значения
XHR.get('<%=url('admin/services/sample')%>', { example : 'test' }, function(x) {
<do whatever>
});
function parse_gateway()
local example = luci.http.formvalue("example")
end
Когда я попытался передать два параметра запроса с одним и тем же ключом, я получил следующее
XHR.get('<%=url('admin/services/sample')%>', { example : 'test', example : 'test1' }, function(x) {
<do whatever>
});
function parse_gateway()
local example = luci.http.formvalue("example")
end
На этот раз пример был test1
Так что в вашем случае кажется, что вам нужно иметь уникальные ключи параметров.
XHR.get('<%=url('admin/services/sample')%>', { one : '1', two : '2', three : '3' }, function(x) {
<do whatever>
});
function parse_gateway()
local one = luci.http.formvalue("one")
local two = luci.http.formvalue("two")
local three = luci.http.formvalue("three")
end