Показать сообщение отдельно

  #2  
Старый 09.08.2022, 12:46
sizeoftrickster
Участник форума
Регистрация: 28.07.2021
Сообщений: 138
С нами: 2524529

Репутация: 163
По умолчанию

Подскажите пожалуйста, хочу ответ от сервера засунуть в lua_table и уже с помощью средств lua обращаться и получать данные.

Пример таблицы:





Код:
{
"Output"
:
{
"ok"
:
true
}
"Code"
:
123
}


Пример работы:





Код:
local
response
=
someFunc
(
...
)
print
(
response
[
"Output"
]
[
"ok"
]
)
--Должно быть true


Получаю ответ от сервера и записываю его в переменную response.

C++:





Код:
curl_easy_setopt
(
cURL
,
CURLOPT_WRITEFUNCTION
,
Utility
::
writeCallback
)
;
curl_easy_setopt
(
cURL
,
CURLOPT_WRITEDATA
,
&
response
)
;


С помощью nlohmann::json перевожу string в json.

C++:





Код:
nlohmann
::
json json
=
nlohmann
::
json
::
parse
(
response
)
;


Затем создаю таблицу, и возвращаю её. В итоге получаю, что это userdata, можно использовать .dump(), что-бы перевести в строку, но нельзя будет обращаться к этой таблице, прошу помощи😇

C++:





Код:
sol
::
table table
=
lua
.
create_table
(
)
;
table
[
"Output"
]
=
json
;
return
table
;
 
Ответить с цитированием