Параметры запроса POST API REST WooCommerce не используются с cURL - PullRequest
0 голосов
/ 24 мая 2019

Мне удалось установить библиотеку cURL и заставить ее работать в моем проекте C ++, но POST-запросы, похоже, не работают специально с REST API WooCommerce.

Я пробовал тот же запрос в Insomnia, ион работает отлично (я пытаюсь создать продукт).

bool LinkerURL::executePost(std::string toPost) {

    std::string URL = main_domain + "wp-json/wc/v3/products/?consumer_key=" + consumer_key + "&consumer_secret=" + consumer_secret;

    curl_global_init(CURL_GLOBAL_ALL);
    curl = curl_easy_init();

    if (curl) {
        curl_easy_setopt(curl, CURLOPT_URL, URL.c_str());
        curl_easy_setopt(curl, CURLOPT_POSTFIELDS, toPost);

        curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteCallback);
        curl_easy_setopt(curl, CURLOPT_WRITEDATA, &readBuffer);
        res = curl_easy_perform(curl);

        // Check for errors
        if (res != CURLE_OK) {
            return false;
        }
        else {
            return true;
        }

    }

    // cleanup
    curl_easy_cleanup(curl);
    curl_global_cleanup();

}

Когда я делаю это в бессоннице, он работает очень хорошо (параметр std::string toPost представляет собой текст в формате JSON, который предоставляется в Документация WooCommerce , что я изменил значения на пользовательские параметры, чтобы увидеть, появляются ли они в моем инвентаре продуктов на панели инструментов WooCommerce), но когда я даю тот же запрос, что и параметр cURL, созданный продукт является базовым продуктом.без моих параметров.

Результат:

enter image description here

Верхний продукт - это продукт, созданный в Visual Studio с использованием cURL, нижнийодин из них создан с использованием Insomnia с тем же текстом JSON.

...