Hoje vou mostrar uma dica rápida e avançada que pode te ajudar a manter seus sistema mais seguros, quando se trabalha com Ajax. Irei desenvolver encima do PHP e do jQuery, mas a dica vale para qualquer biblioteca (PHP, ASP…) e framework (jQuery, Mootools…), inclusive se for na mão mesmo, sem framework.
Quando o jQuery faz uma requisição em Ajax, é passado um cabeçalho header com a seguinte variável:
$_SERVER['HTTP_X_REQUESTED_WITH']
E a partir dai, muita gente faz até uma função para checar se a requisição é ajax e alterar o comportamento do sistema de acordo com o resultado:
/**
* Checa se é uma requisição em ajax através do cabeçalho header
* @return boolean
*/
function checkAjax(){
return (isset($_SERVER['HTTP_X_REQUESTED_WITH']))? TRUE : FALSE;
}
Até ai tudo bem… mas o que quero mostrar é porque que com o jQuery, há esse cabeçalho adicional, e como podemos adicionar novos cabeçalhos com Javascript. Vamos lá: