$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);
Попытка отправить почтовый запрос с php-кодом в Laravel возвращает ошибку. Я знаю, что нет необходимости отправлять аутентификацию через заголовок, но я включил ее, чтобы показать, что я пытался это сделать. Я вроде новичок в curl с php, поэтому я не очень знаком с curl_setopt, я могу упустить что-то очевидное. Я использую пример json-файла, предоставленный в документации API Shopify.
Ответ в chrome, во входящих соединениях Shopify возвращает код 200, но переменная ответа, возвращаемая php, показывает ошибку 406
Также я отправляю тот же запрос с почтальоном, но я получаю только статус 200 ok и кнопку продолжения со ссылкой, но отправка того же запроса с PHP не возвращает этот HTML-файл Почтальон