Я использую LuaSocket и http.request для вызова удаленного PHP-скрипта, который генерирует таблицу Lua и выводит ее в браузер.Строка для таблицы в Lua
Когда я сохраняю ответ http.request в переменной, это строка, которая делает таблицу непригодной для использования в моем коде Lua.
Например:
eventData = http.request("http://www.example.com/events.php")
print(eventData)
--print outputs this "string", that is really a Lua table that PHP generated
months={
'January',
'February',
'March',
'April',
'May',
'June',
'July',
'August',
'September',
'October',
'November',
'December',
}
Если я пытаюсь вызова месяцев [4], например, это ошибки вне с «попыткой глобальный индекс„месяца“(нилъ значение)». Как я могу использовать эту строку в качестве полезной таблицы?
Спасибо!
Хорошо работает. Спасибо! – Trae
Технически вы должны использовать 'assert (loadstring (eventData))()' для распространения любых синтаксических ошибок в предоставленном коде (в отличие от простое выскакивание необъяснимой ошибки «попытка вызвать значение nil»). –
Я вижу серьезную проблему безопасности здесь, json и подходящий синтаксический анализатор или подобный метод для синтаксиса, подобного lua, будут правильным путем. – dualed