Aller au contenu

Sujets conseillés

Posté

Bonjour

depuis quelques jours je me prend la tête avec un soucis sur  api de rue du commerce.

Voici des bout de mon code :

 

// Creations des offres
$flux_offer=array();
array_push($flux_offer,  array('available_ended' => null,
							   'available_started' => null,
							   'description' => null,
							   'internal_description' => null,
							   'min_quantity_alert' => null,
                               'price' => 1,
							   'product_id' => 'SKU001',
							   'product_id_type' => 'SKU',
							   'quantity' => 1,
							   'shop_sku' => 'SKU0001',
							   'state_code' => '11',
							   'update_delete' => 'update'));
																												
array_push($flux_offer,  array('available_ended' => null,
								'available_started' => null,
								'description' => null,
								'internal_description' => null,
								'min_quantity_alert' => null,
								'price' => 2,
								'product_id' => 'SKU002',
								'product_id_type' => 'SKU',
								'quantity' => 2,
								'shop_sku' => 'SKU0002',
								'state_code' => '11',
								'update_delete' => 'update'));
	
	
// Ouverture d'une instance sur l API RDC
$api=new api_rdc($GLOBALS['config_rdc']['cle_api']);

// Creation des données offers a envoyer a l API RDC																										
$api->donnees=array(
  'offers' =>  $flux_offer,
);

// POST offers sur api 
$post_offers_rdc=$api->post('/offers');
$api=null;

Et voici la fonction post de ma class api

 function post($methode)
 {

  // Mise en forme des données à envoyer
		$curl_donnees= json_encode($this->donnees);
		// Execution de la requête
  $curl=curl_init();
  curl_setopt($curl, CURLOPT_URL, 'https://mirakl-api.groupe-rueducommerce.fr/api'.$methode);
  curl_setopt($curl, CURLOPT_HTTPHEADER, $this->curl_entetes);
  curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
		curl_setopt($curl, CURLOPT_POST, true);
  curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, true);
		curl_setopt($curl, CURLOPT_POSTFIELDS, $curl_donnees);
  curl_setopt($curl, CURLOPT_CAINFO, $GLOBALS['config_rdc']['chemin_librairies'].'/certificats/mozilla.pem');
		var_dump($curl);
  $reponse=curl_exec($curl);
  $erreur_curl=curl_error($curl);
  
  unset($curl);

  // Retour
		return $reponse;

 }

 

ET j'ai toujours ce retour :

{ "message" : "Body is required", "status" : 400 }"

 

Je vois pas le soucis avec mon Json ou mon code si quelqu'un a une idée....

 

J'ai mis les spec ici : http://www.eurowebcorp.com/rdc/rdc.html

 

Merci par avance

 

Posté (modifié)

Voila a se que donne le

$curl_donnees= json_encode($this->donnees);

 

{"offers":[{"available_ended":null,"available_started":null,"description":null,"internal_description":null,"min_quantity_alert":null,"price":1,"product_id":"SKU001","product_id_type":"SKU","quantity":1,"shop_sku":"SKU0001","state_code":"11","update_delete":"update"},{"available_ended":null,"available_started":null,"description":null,"internal_description":null,"min_quantity_alert":null,"price":2,"product_id":"SKU002","product_id_type":"SKU","quantity":2,"shop_sku":"SKU0002","state_code":"11","update_delete":"update"}]}

 

 

Le 16/02/2018 at 09:58, Portekoi a dit :

Et as tu testé avant avec un autre logiciel comme POSTMAN?

Je connais pas, je vais me pencher dessus

Modifié par Jc Toncommerce

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...