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)