Base de connaissance Apps Panel

S’abonner

Editer vos webservices

Nous allons maintenant voir comment personnaliser vos propres webservices / en créer de nouveau.

Pour cela, nous allons reprendre avec la fonction get() .

public static function get(\Lib\Controller $controller, $params = array()){
  if(empty($params['id_parent'])) {
      Lib\Tools::exception('id_parent manquant',true);
  }
  static ::  addFields(self::$fields);
  $souscategories =  parent:: get($controller, $params);

  return $souscategories;
}

Vous pouvez éditez ce WS afin qu’il vous retourne des résultats plus spécifique. Par exemple, retourner seulement les sous-catégories correspondant  à une catégorie principal :

public static function get(\Lib\Controller $controller, $params = array()){

  if(empty($params['id_parent'])) {
      Lib\Tools::exception('id_parent manquant',true);
  }
  static ::  addFields(self::$fields);
  $allcategories = parent:: get($controller, null);
  $souscategories =  parent:: get($controller, $params);
  foreach($allcategories as $allcategorie) {
      $i = 0;
      foreach ($souscategories as $souscategorie) {
          if ($souscategorie['id_parent'] == $allcategorie['id_categorie']){
              $souscategories[$i]['title_categorie']= $allcategorie['title_sous_categorie'];
          }
          $i++;
      }
  }
  return $souscategories;
}

Vous pouvez constater immédiatement le résultat en rafraichissant l'url du webservice qui sera pour cet exemple :
http://monapp.ws.apnl.ws/?key=[KEYDEVOTREAPP]&deviceuid=[DEVICEUID]&action=[NOMFONCTION]&id_parent=[ID]

Attention, veillez à encoder vos paramètres en Base64 si vous souhaitez tester votre requête.

Cet article vous a-t-il été utile ?
Utilisateurs qui ont trouvé cela utile : 0 sur 0
Vous avez d’autres questions ? Envoyer une demande