Curl не возвращает данные после post запроса, как исправить?

Есть код инициализации

curl_global_init(CURL_GLOBAL_ALL);
	curl = curl_easy_init();
	if (curl) {
		curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback);
		curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
		curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
		curl_easy_setopt(curl, CURLOPT_POST, 1);
		curl_easy_setopt(curl, CURLOPT_URL, "<path-to-php>");
	} else
		luaL_error(L, "Curl not initialized.");


Есть код запроса
static int lua_getinfo(lua_State* L)
{
	auto it = NameKeys.find(luaL_checkstring(L, 1));
	if (it == NameKeys.end())
		return 0;
	std::string json_result;
	curl_easy_setopt(curl, CURLOPT_WRITEDATA, &json_result);
	curl_easy_setopt(curl, CURLOPT_POSTFIELDS,
		std::string("action=info&key=") + it->second);
	auto res = curl_easy_perform(curl);
	if(res != CURLE_OK)
		luaL_error(L, curl_easy_strerror(res));
	GLUAPRINT(json_result.c_str());
	lua_pushstring(L, json_result.c_str());
	return 1;
}


Почему то после запроса выводится только пустая строка. Как исправить?
  • Вопрос задан
  • 120 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы