O CORS już wspominałem w innej poradzie. Tutaj jednak przyjrzymy się rozwiązaniu dedykowanemu Symfony i pakietowi nelmio/NelmioCorsBundle.
Korzystanie z Symfony i Composer-a przyzwyczaja do wygody, instalacja pakietu jest banalna.
composer require nelmio/cors-bundle
Po instalacji odnajdujemy plik konfiguracyjny, który znajduje się w katalogu /config/packages/nelmio_cors.yaml
I zmieniamy jego zawartość na poniższą.
nelmio_cors: defaults: origin_regex: true allow_origin: ['%env(CORS_ALLOW_ORIGIN)%'] allow_methods: ['GET', 'OPTIONS', 'POST', 'PUT', 'PATCH', 'DELETE'] allow_headers: ['Content-Type', 'Authorization'] expose_headers: ['Link'] max_age: 3600 paths: '^/': ~
I w ten oto piękny sposób mamy załatwiony “problem” z CORS w naszej aplikacji. Pamiętajcie jedynie, aby w pliku .env
mieć ustawioną zmienną CORS_ALLOW_ORIGIN
na wartość *
.
Fragment pliku .env
###> nelmio/cors-bundle ### CORS_ALLOW_ORIGIN=* ###< nelmio/cors-bundle ###