@@ -33,19 +33,33 @@ public function handle(Request $request): Response
33
33
} elseif ($ method == 'OPTIONS ' ) {
34
34
$ response = new Response (Response::OK , '' );
35
35
$ allowHeaders = $ this ->getProperty ('allowHeaders ' , 'Content-Type, X-XSRF-TOKEN ' );
36
- $ response ->addHeader ('Access-Control-Allow-Headers ' , $ allowHeaders );
36
+ if ($ allowHeaders ) {
37
+ $ response ->addHeader ('Access-Control-Allow-Headers ' , $ allowHeaders );
38
+ }
37
39
$ allowMethods = $ this ->getProperty ('allowMethods ' , 'OPTIONS, GET, PUT, POST, DELETE, PATCH ' );
38
- $ response ->addHeader ('Access-Control-Allow-Methods ' , $ allowMethods );
40
+ if ($ allowMethods ) {
41
+ $ response ->addHeader ('Access-Control-Allow-Methods ' , $ allowMethods );
42
+ }
39
43
$ allowCredentials = $ this ->getProperty ('allowCredentials ' , 'true ' );
40
- $ response ->addHeader ('Access-Control-Allow-Credentials ' , $ allowCredentials );
44
+ if ($ allowCredentials ) {
45
+ $ response ->addHeader ('Access-Control-Allow-Credentials ' , $ allowCredentials );
46
+ }
41
47
$ maxAge = $ this ->getProperty ('maxAge ' , '1728000 ' );
42
- $ response ->addHeader ('Access-Control-Max-Age ' , $ maxAge );
48
+ if ($ maxAge ) {
49
+ $ response ->addHeader ('Access-Control-Max-Age ' , $ maxAge );
50
+ }
51
+ $ exposeHeaders = $ this ->getProperty ('exposeHeaders ' , '' );
52
+ if ($ exposeHeaders ) {
53
+ $ response ->addHeader ('Access-Control-Expose-Headers ' , $ exposeHeaders );
54
+ }
43
55
} else {
44
56
$ response = $ this ->next ->handle ($ request );
45
57
}
46
58
if ($ origin ) {
47
59
$ allowCredentials = $ this ->getProperty ('allowCredentials ' , 'true ' );
48
- $ response ->addHeader ('Access-Control-Allow-Credentials ' , $ allowCredentials );
60
+ if ($ allowCredentials ) {
61
+ $ response ->addHeader ('Access-Control-Allow-Credentials ' , $ allowCredentials );
62
+ }
49
63
$ response ->addHeader ('Access-Control-Allow-Origin ' , $ origin );
50
64
}
51
65
return $ response ;
0 commit comments