From 9ed2d2b8d1a56842fed4f2207927096b23cc88aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20Sessing=C3=B8?= Date: Sun, 28 Mar 2021 23:32:33 +0200 Subject: [PATCH] Updated Request::isPostBack to return true if request-method could contain data in body. --- src/Pecee/Http/Input/InputHandler.php | 2 +- src/Pecee/Http/Middleware/BaseCsrfVerifier.php | 2 +- src/Pecee/Http/Request.php | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Pecee/Http/Input/InputHandler.php b/src/Pecee/Http/Input/InputHandler.php index bf99881..13bfe5c 100644 --- a/src/Pecee/Http/Input/InputHandler.php +++ b/src/Pecee/Http/Input/InputHandler.php @@ -71,7 +71,7 @@ class InputHandler /* Parse post requests */ $this->originalPost = $_POST; - if (\in_array($this->request->getMethod(), Request::$requestTypesPost, false) === true) { + if ($this->request->isPostBack() === true) { $contents = file_get_contents('php://input'); diff --git a/src/Pecee/Http/Middleware/BaseCsrfVerifier.php b/src/Pecee/Http/Middleware/BaseCsrfVerifier.php index f137504..392bcf9 100644 --- a/src/Pecee/Http/Middleware/BaseCsrfVerifier.php +++ b/src/Pecee/Http/Middleware/BaseCsrfVerifier.php @@ -63,7 +63,7 @@ class BaseCsrfVerifier implements IMiddleware */ public function handle(Request $request): void { - if ($this->skip($request) === false && \in_array($request->getMethod(), Request::$requestTypesPost, true) === true) { + if ($this->skip($request) === false && $request->isPostBack() === true) { $token = $request->getInputHandler()->value( static::POST_KEY, diff --git a/src/Pecee/Http/Request.php b/src/Pecee/Http/Request.php index 04e69b5..aab2ddb 100644 --- a/src/Pecee/Http/Request.php +++ b/src/Pecee/Http/Request.php @@ -363,13 +363,13 @@ class Request } /** - * Returns true when request-type is post. + * Returns true when request-method is type that could contain data in the page body. * * @return bool */ public function isPostBack(): bool { - return ($this->getMethod() === static::REQUEST_TYPE_POST); + return \in_array($this->getMethod(), static::$requestTypesPost, true); } /**