Я работаю над библиотекой C ++, которая выполняет запрос API с помощью curl. У меня возникла проблема, когда я пытаюсь обработать файлы cookie, которые возвращаются в ответе с использованием curl_slist
и curl_easy_getinfo(curl, CURLINFO_COOKIELIST, &cookies);
.
Похоже, это связанный список, поэтому у меня есть атрибуты current и next, и я проверяю, когда next равно NULL, я должен выйти из цикла, но по какой-то причине он застревает в цикле, похожеон делает одно и то же печенье снова и снова, но не может понять, почему.
struct curl_slist* cookies;
curl_easy_getinfo(curl, CURLINFO_COOKIELIST, &cookies);
int i = 1;
std::vector<CookieObj> cookieObjects;
struct curl_slist* current = cookies;
if (current != NULL)
{
string cookieString = string(current->data);
CookieObj cookieObj = storeCookie(cookieString);
cookieObjects.push_back(cookieObj);
while (current->next != NULL)
{
string cookieString = string(current->data);
CookieObj cookieObj = this->storeCookie(cookieString);
cookieObjects.push_back(cookieObj);
current = cookies->next;
i++;
}