Доброе утро,
Я пытаюсь обновить уровень запасов SKU. Я использую этот URL... (с моим магазином)
https://mystore.mybigcommerce.com/api/v2/products/76/skus/3.json
Это работает (если я зайду сюда и введу учетные данные, я увижу данные GET об этом SKU.
Теперь информация об обновлении уровня запасов @ http://developer.bigcommerce.com/docs/api/v2/resources/products/skus#PUT.products.id.skus.id.json
Теперь мой код выглядит следующим образом...
//Data to Update
$StockdataRAW = array('inventory_level' => 1230);
//Data to update (JSON encoded)
$Stockdata = json_encode($StockdataRAW);
//See the JSON String
var_dump($Stockdata);
$api_url = $BC_Api_Path.'/products/76/skus/3.json';
//Display URL created to test
echo '<a href="'.$api_url.'">'.$api_url.'</a>';
$ch = curl_init();
curl_setopt( $ch, CURLOPT_URL, $api_url );
curl_setopt( $ch, CURLOPT_HTTPHEADER, array ('Accept: application/json', 'Content- Length: 0') );
curl_setopt( $ch, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, 0 );
curl_setopt( $ch, CURLOPT_USERPWD, $BC_Api_User.":".$BC_Api_Token );
curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, 0 );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt($ch, CURLOPT_POSTFIELDS, $Stockdata);
$response = curl_exec( $ch );
//Just a dump of the response
echo'<pre>';
var_dump($response);
echo'</pre><hr>';
//decode the JSON
$result = json_decode($response);
print_r($result);
Я также попытался изменить эту строку...
curl_setopt($ch, CURLOPT_POSTFIELDS, $Stockdata);
To...
curl_setopt($ch, CURLOPT_POSTFIELDS, $StockdataRAW);
&
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($StockdataRAW));
&
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($Stockdata));
Ошибка, которую я получаю в своем ответе VAR_DUMP, IS....
string '[{"status":415,"message":"The specified input content type is not valid."}]' (length=75)
Что я делаю неправильно? Я не могу понять это! Спасибо заранее.