although the headers attribute are public.
1 Answer
Because they are public. Just access them through the property directly:
$request->headers->get('Content-Type');
The request header collection is an instance of Symfony\Component\HttpFoundation\HeaderBag, the response headers are contained in a Symfony\Component\HttpFoundation\ResponseHeaderBag.