WooCommerce REST API POST请求参数未与cURL一起使用

时间:2019-05-24 15:56:42

标签: api http url curl woocommerce-rest-api

我设法安装了cURL库并使其在我的C ++项目中工作,但是POST请求似乎不适用于WooCommerce REST API。

我在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();

}

当我在Insomnia中执行此操作时,效果很好(std::string toPost参数是WooCommerce documentation中提供的JSON格式的文本,我将这些值更改为自定义参数以查看它们是否显示在WooCommerce信息中心的产品清单中),但是当我向cURL参数发出相同的请求时,创建的产品是基本产品,没有任何参数。

结果:

enter image description here

顶部是在Visual Studio中使用cURL创建的产品,底部是使用Insomnia创建的具有相同JSON文本的产品。

0 个答案:

没有答案