Jeffrey Brubaker
Contributed by Jeffrey Brubaker in #26655

Single-page applications (SPA) are web applications that use JavaScript to rewrite the current page contents dynamically rather than loading entire new pages from the backend.

One of the problems of working on those applications is that Symfony's Web Debug Toolbar remains unchanged with the debug information of the first action executed when browsing the application.

In order to solve this issue, in Symfony 4.1 we've introduced a special Symfony-Debug-Toolbar-Replace HTTP header. Set its value to 1 to tell Symfony to replace the web debug toolbar with the new one associated with the current response.

If you want to enable this behavior for just one response, add this to your code:

1
$response->headers->set('Symfony-Debug-Toolbar-Replace', 1);

If you work on a SPA application, it's better to define an event subscriber and listen to the kernel.response event to add that header automatically.

Published in #Living on the edge