Cotten
Cotten

Reputation: 9067

Get headers from Symfony\Component\HttpFoundation\Response

For debugging purposes I want to log all headers from the response object like so in filters.php:

App::after(function($request, $response) {
  if(App::environment() !== 'dev') { return; }

  error_log(print_r($response->getHeadersPleaaase()));

$response is typically a Illuminate\Http\JsonResponse and I cannot find any obvious method for getting the headers there.

Upvotes: 0

Views: 2652

Answers (2)

websky
websky

Reputation: 3172

ini_set("log_errors", 1);
ini_set("error_log", __DIR__.'/../app/logs/prod.log');//ini_set("error_log", your path and file);
error_log( 'BEGIN===========>' );
error_log( $request );
error_log( $response );
error_log( '<========END' );

an example of using (Symfony2)

app.php

<?php

use Symfony\Component\ClassLoader\ApcClassLoader;
use Symfony\Component\HttpFoundation\Request;

$loader = require_once __DIR__.'/../app/bootstrap.php.cache';

// Use APC for autoloading to improve performance.
// Change 'sf2' to a unique prefix in order to prevent cache key conflicts
// with other applications also using APC.
/*
$apcLoader = new ApcClassLoader('sf2', $loader);
$loader->unregister();
$apcLoader->register(true);
*/

require_once __DIR__.'/../app/AppKernel.php';
//require_once __DIR__.'/../app/AppCache.php';

$kernel = new AppKernel('prod', false);
$kernel->loadClassCache();
//$kernel = new AppCache($kernel);

// When using the HttpCache, you need to call the method in your front controller instead of relying on the configuration parameter
//Request::enableHttpMethodParameterOverride();
$request = Request::createFromGlobals();
$response = $kernel->handle($request);

ini_set("log_errors", 1);
ini_set("error_log", __DIR__.'/../app/logs/prod.log');
error_log( 'BEGIN===========>' );
error_log( $request );
error_log( $response );
error_log( '<========END' );

$response->send();
$kernel->terminate($request, $response);

Upvotes: 0

Antonio Carlos Ribeiro
Antonio Carlos Ribeiro

Reputation: 87719

Headers is a public property:

error_log(print_r($response->headers));

Upvotes: 1

Related Questions