Skip to content

Commit 54006eb

Browse files
committed
Tweak header vary
1 parent fda2a6f commit 54006eb

File tree

1 file changed

+6
-15
lines changed

1 file changed

+6
-15
lines changed

src/CorsService.php

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -209,21 +209,12 @@ private function configureMaxAge(Response $response, Request $request)
209209

210210
public function varyHeader(Response $response, $header): Response
211211
{
212-
if (!$response->headers->has('Vary')) {
213-
$response->headers->set('Vary', $header);
214-
} else {
215-
$varyHeaders = $response->headers->all('Vary');
216-
$existing = [];
217-
foreach ($varyHeaders as $value) {
218-
$existing = array_merge($existing, explode(', ', $value));
219-
}
220-
221-
if (!in_array($header, $existing)) {
222-
if (count($varyHeaders) < 2) {
223-
$response->headers->set('Vary', $response->headers->get('Vary') . ', ' . $header);
224-
} else {
225-
$response->headers->set('Vary', $header, false);
226-
}
212+
$vary = $response->getVary();
213+
if (!in_array($header, $vary)) {
214+
if (count($response->headers->all('Vary')) == 1) {
215+
$response->setVary($response->headers->get('Vary') . ', ' . $header, true);
216+
} else {
217+
$response->setVary($header, false);
227218
}
228219
}
229220

0 commit comments

Comments
 (0)