Symfony 4.1: Aprimoramentos nas Requisições Ajax

Uma forma mais simples de testar requisições Ajax

Andréia Bohner
2 min readApr 21, 2018

O componente BrowserKit usado nos testes funcionais do Symfony fornece muitos utilitários para simular o comportamento de um navegador web. No Symfony 4.1, foi adicionado um novo utilitário para tornar as requisições Ajax mais simples: xmlHttpRequest().

Esse método funciona da mesma forma que o método atual request() e aceita os mesmos argumentos, mas adiciona automaticamente o cabeçalho HTTP_X_REQUESTED_WITH necessário, para que você não precise fazê-lo:

// Before
$crawler = $client->request('GET', '/some/path', [], [], [
'HTTP_X-Requested-With' => 'XMLHttpRequest',
]);

// After
$crawler = $client->xmlHttpRequest('GET', '/some/path');

Melhorado o painel Ajax na barra de ferramentas de depuração

A primeira alteração menor, mas perceptível, é que o link para o profile de requisição Ajax foi movido para a primeira coluna da tabela, portanto, é mais fácil clicar nele.

Além disso, quando a requisição Ajax resulta em uma exceção (status HTTP 400 ou superior), o link do profiler aponta para o painel do profiler de exceção, em vez do painel de requisição/resposta padrão:

Em qualquer caso, o novo recurso maior do painel Ajax é que agora, as requisições exibem sua duração em tempo real, para que você saiba sempre quais requisições ainda estão pendentes:

Tradução de: New in Symfony 4.1: Ajax improvements

--

--