Skip to content

Commit 5ae5910

Browse files
authored
Apply cors headers for graphql request as well
1 parent 5c9c00f commit 5ae5910

File tree

1 file changed

+14
-7
lines changed

1 file changed

+14
-7
lines changed

src/GraphQLController.php

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -40,13 +40,8 @@ public function __construct(
4040
public function options() : Response
4141
{
4242
$response = new Response();
43-
$response->headers->set('Access-Control-Allow-Credentials', 'true');
44-
$response->headers->set('Access-Control-Allow-Origin', '*');
45-
$response->headers->set('Access-Control-Allow-Methods', 'HEAD, GET, POST, OPTIONS');
46-
$response->headers->set('Access-Control-Allow-Headers', 'Content-Type, Authorization');
47-
$response->headers->set('Access-Control-Max-Age', '86400');
4843

49-
return $response;
44+
return $this->applyCorsHeaders($response);
5045
}
5146

5247
#[Route(name: 'graphql', methods: ['GET', 'POST'])]
@@ -57,8 +52,9 @@ public function graphql(Request $request) : JsonResponse
5752
: ErrorHandlingMode::ALL;
5853
$graphpinator = new Graphpinator($this->schema, $errorHandling, $this->getEnabledModules($request), $this->logger);
5954
$requestFactory = new RequestFactory($request);
55+
$response = new JsonResponse($graphpinator->run($requestFactory));
6056

61-
return new JsonResponse($graphpinator->run($requestFactory));
57+
return $this->applyCorsHeaders($response);
6258
}
6359

6460
#[Route('/ui', name: 'ui', methods: ['GET'])]
@@ -98,6 +94,17 @@ public function schemaFile() : Response
9894
return $response;
9995
}
10096

97+
protected function applyCorsHeaders(Response $response) : Response
98+
{
99+
$response->headers->set('Access-Control-Allow-Credentials', 'true');
100+
$response->headers->set('Access-Control-Allow-Origin', '*');
101+
$response->headers->set('Access-Control-Allow-Methods', 'HEAD, GET, POST, OPTIONS');
102+
$response->headers->set('Access-Control-Allow-Headers', '*');
103+
$response->headers->set('Access-Control-Max-Age', '86400');
104+
105+
return $response;
106+
}
107+
101108
protected function getEnabledModules(Request $request) : ModuleSet
102109
{
103110
return new ModuleSet([

0 commit comments

Comments
 (0)