Skip to content

Commit ec6a8e0

Browse files
authored
Merge pull request #109 from samsonasik/use-modern
Allow X-Requested-With with value XMLHttpRequest over XmlHttpRequest
2 parents 0011b99 + 12395f2 commit ec6a8e0

2 files changed

Lines changed: 6 additions & 5 deletions

File tree

spec/Middleware/MezzioSpec.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -327,7 +327,7 @@
327327
);
328328

329329
$request = $this->request;
330-
$request = $request->withHeader('X-Requested-With', 'XmlHttpRequest');
330+
$request = $request->withHeader('X-Requested-With', random_int(0, 1) !== 0 ? 'XMLHttpRequest' : 'XmlHttpRequest');
331331

332332
$handler = Double::instance(['implements' => RequestHandlerInterface::class]);
333333
allow($handler)->toReceive('handle')->with($request)->andRun(function (): never {
@@ -364,7 +364,7 @@
364364
);
365365

366366
$request = $this->request;
367-
$request = $request->withHeader('X-Requested-With', 'XmlHttpRequest');
367+
$request = $request->withHeader('X-Requested-With', random_int(0, 1) !== 0 ? 'XMLHttpRequest' : 'XmlHttpRequest');
368368

369369
$handler = Double::instance(['implements' => RequestHandlerInterface::class]);
370370
allow($handler)->toReceive('handle')->with($request)->andRun(function (): never {
@@ -401,7 +401,7 @@
401401
);
402402

403403
$request = $this->request;
404-
$request = $request->withHeader('X-Requested-With', 'XmlHttpRequest');
404+
$request = $request->withHeader('X-Requested-With', random_int(0, 1) !== 0 ? 'XMLHttpRequest' : 'XmlHttpRequest');
405405

406406
$handler = Double::instance(['implements' => RequestHandlerInterface::class]);
407407
allow($handler)->toReceive('handle')->with($request)->andRun(function (): never {
@@ -436,7 +436,7 @@
436436
);
437437

438438
$request = $this->request;
439-
$request = $request->withHeader('X-Requested-With', 'XmlHttpRequest');
439+
$request = $request->withHeader('X-Requested-With', random_int(0, 1) !== 0 ? 'XMLHttpRequest' : 'XmlHttpRequest');
440440

441441
$handler = Double::instance(['implements' => RequestHandlerInterface::class]);
442442
allow($handler)->toReceive('handle')->with($request)->andRun(function () use ($exception): never {

src/Middleware/Mezzio.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323

2424
use function ErrorHeroModule\detectMessageContentType;
2525
use function ErrorHeroModule\isExcludedException;
26+
use function strcasecmp;
2627

2728
final class Mezzio implements MiddlewareInterface
2829
{
@@ -101,7 +102,7 @@ private function showDefaultView(): Response|HtmlResponse
101102
/** @var ServerRequestInterface $request */
102103
$request = $this->request;
103104
$isXmlHttpRequest = $request->hasHeader('X-Requested-With')
104-
&& $request->getHeaderLine('X-Requested-With') === 'XmlHttpRequest';
105+
&& strcasecmp($request->getHeaderLine('X-Requested-With'), 'XMLHttpRequest') === 0;
105106

106107
if (
107108
$isXmlHttpRequest &&

0 commit comments

Comments
 (0)