Файлы cookie не сохраняются в cURL C ++, такой простой и чистый пример кода не будет работать - PullRequest
0 голосов
/ 27 марта 2012

почему не хранятся файлы cookie? на местном веб-сайте, который я сделал, есть setcookie («test», time ()); в PHP и работает в браузере нормально, но в cURL это просто не работает, я даже не знаю, что попробовать, это самое простое, что я получил, обрезав код, и до сих пор не сохраняю куки в файле. он даже не создает файл для его сохранения (кстати, у окон есть разрешения на добавление любого файла в корень, так как я все время там перемещаюсь и создаю файлы), и да, на примере сайта устанавливаются файлы cookie. что с ним не так?

Вывод контента правильный и должен работать. но это просто не работает. : /

спасибо заранее.

#include <curl/curl.h>
#include <iostream>
#include <conio.h>
#include <string>

using namespace std;

static size_t WriteCallback(void *contents, size_t size, size_t nmemb, void *userp) {
            ((std::string*)userp)->append((char*)contents, size * nmemb);
            return size * nmemb;
        }

int main () {
        CURL *curl2;
        CURLcode res;




        curl_global_init(CURL_GLOBAL_ALL);



       string url2 = "http://localhost/test.php";
       url2 = "http://www.facebook.com";

        curl2 = curl_easy_init();
        if(curl2) {

            string html2 = "";
            struct curl_slist *chunk = NULL;


        curl_easy_setopt(curl2, CURLOPT_URL, url2.c_str());     
        curl_easy_setopt(curl2, CURLOPT_COOKIEFILE, "C:\\teste.txt");
        curl_easy_setopt(curl2, CURLOPT_COOKIEJAR, "C:\\teste.txt");                
        curl_easy_setopt(curl2, CURLOPT_WRITEFUNCTION, WriteCallback);
        curl_easy_setopt(curl2, CURLOPT_WRITEDATA, &html2);


        res = curl_easy_perform(curl2);

        std::cout << "RESULT: " << html2;

        }


        _getch();
        return 0;
}

1 Ответ

1 голос
/ 27 марта 2012

Не забудьте позвонить curl_easy_cleanup(curl2)

...