From cf35a8ade4337ca3860a7edfbe45e59f185c5ab5 Mon Sep 17 00:00:00 2001 From: xdrm-brackets Date: Sun, 26 Nov 2017 13:48:33 +0100 Subject: [PATCH] fix: api.core.Request (now can force a HTTP_METHOD when called inside php (3rd argument)) --- build/api/core/Request.php | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/build/api/core/Request.php b/build/api/core/Request.php index d263846..7ed7e83 100755 --- a/build/api/core/Request.php +++ b/build/api/core/Request.php @@ -38,13 +38,14 @@ * * @path Chemin de delegation ("module/methode") * @param Tableau associatif contenant les parametres utiles au traitement + * @forced_method Méthode demandée (optionnel) * * @return instance Instance crée * */ - public function __construct($path=null, $params=null){ + public function __construct($path=null, $params=null, $forced_method=null){ - return $this->buildRequestObject($path, $params); + return $this->buildRequestObject($path, $params, $forced_method); } @@ -54,11 +55,12 @@ * * @path Chemin de delegation ("module/methode") * @param Tableau associatif contenant les parametres utiles au traitement + * @forced_method Méthode demandée (optionnel) * * @return status Retourne si oui ou non tout s'est bien passe * */ - private function buildRequestObject($path=null, $params=null){ + private function buildRequestObject($path=null, $params=null, $forced_method=null){ /* [1] Initialisation =========================================================*/ /* (1) Erreur par défaut */ @@ -101,10 +103,10 @@ $params = (is_array($params)) ? $params : []; /* (3) On définit en constante la méthode HTTP */ - if( !isset($_SERVER['REQUEST_METHOD']) ) + if( !isset($_SERVER['REQUEST_METHOD']) || !is_string($forced_method) ) return $this->error->set(Err::UnknownHttpMethod); - $this->http_method = strtoupper($_SERVER['REQUEST_METHOD']); + $this->http_method = is_string($forced_method) ? strtoupper($forced_method) : strtoupper($_SERVER['REQUEST_METHOD']); /* [4] Verification du chemin (existence module+methode)