首页 > 解决方案 > 向 URL 发送查询后 cURL 返回 NULL

问题描述

我的代码有问题。所以我已经阅读了很多关于 Stackoverflow 的帖子和 eBay API 的文档。但我仍然无法让它工作。

我已经尝试更改“setopt”变量,但它不起作用。

注意:代码位于构造函数中。

    $headers = [
        'Accept: application/json',
        'Content-Type: application/json',
        'Authorization: Basic ' . base64_encode($user_key . ":" . $user_secret),
    ];

    $body = http_build_query([
        'grant_type' => 'authorization_code',
        'code' => $oauth,
        'redirect_uri' => $runame,
    ]);

    switch($action){
        case "import-products":
            $cmd = "https://api.ebay.com/oauth/api_scope/sell.inventory";
            break;
        default:
            $cmd = "";
            break;
    }

    $curl = curl_init();

    curl_setopt_array($curl, array(
        CURLOPT_URL => $url,
        CURLOPT_RETURNTRANSFER => 1,
        CURLOPT_CUSTOMREQUEST => 'POST',
        CURLOPT_POSTFIELDS => $body,
        CURLOPT_HTTPHEADER => $headers,
    ));

    $response = curl_exec($curl);
    $err = curl_error($curl);

    if(curl_errno($curl)){
        print curl_error($curl);
    }

    curl_close($curl);

    if($err){
        echo "cURL Error: ".$err;
    }else{
        echo "cURL Successful: ";
        var_dump(json_decode($response, true));
        echo "\n";
    }

结果始终是“cURL 成功:NULL”,但我想以 JSON 格式而不是 NULL 获取我的整个库存。

标签: phpcurlebay-api

解决方案


推荐阅读