带Shopify的POST产品返回406错误

时间:2019-10-24 21:19:31

标签: php laravel rest api shopify

        $url = "https://key:password@garageprints.myshopify.com/admin/api/2019-10/products/product.json";
        $authentication = "key:password";
        $authentication = base64_encode($authentication);

        $postData = array(
            'product' => [
                'title' => 'Burton Custom Freestyle 151',
                'body_html' => 'Good snowboard!',
                'vendor' => 'Burton',
                'product_type' => 'Snowboard',
                'tags' => 'Barnes & Noble, John\'s Fav, Big Air'
            ]
        );

        $postData = json_encode($postData);

        // Setup cURL
        $ch = curl_init($url);
        curl_setopt_array($ch, array(
            CURLOPT_POST => TRUE,
            CURLOPT_RETURNTRANSFER => TRUE,
            CURLOPT_HEADER => TRUE,
            CURLOPT_HTTPHEADER => array(
                'Authorization: Basic ' . $authentication,
                'Content-Type: application/json'
            ),
            CURLOPT_POSTFIELDS => $postData
        ));

        // Send the request
        $response = curl_exec($ch);

        return ($response);

在Laravel中尝试使用php代码发送发布请求会返回错误。我知道没有必要通过标头发送身份验证,但是我包括了它以表明我已经尝试过了。我是用php卷曲的新手,所以我对curl_setopt不太熟悉,我可能会缺少一些明显的东西。我正在使用Shopify API文档中提供的示例json文件。

chrome中的响应,在传入连接中Shopify返回200代码,但是php返回的响应变量显示406 error

我也与邮递员发送了相同的请求,但是我只得到200 ok状态和带有链接的继续按钮,但是使用PHP发送相同的请求不会返回此html文件Postman

0 个答案:

没有答案