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 :


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
 
// 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

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 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