Os materiais didáticos aqui disponibilizados estão licenciados através de Creative Commons Atribuição-SemDerivações-SemDerivados CC BY-NC-ND. Você possui a permissão para visualizar e compartilhar, desde que atribua os créditos do autor. Não poderá alterá-los e nem utilizá-los para fins comerciais.
Atribuição-SemDerivações-SemDerivados
CC BY-NC-ND
Cursos / Informática para Internet / Desenvolvimento Web II / Aula
Caso o método utilizado para enviar os dados ao servidor (primeiro parâmetro do método open()) tenha sido GET, os dados devem ser passados na própria URL (segundo parâmetro do método open()) como exemplificado a seguir:
var url = "/AulasAjax1/Controlador/Ajax/Categoria";
var ajaxReq = new XMLHttpRequest();
url += "?categoria=" + document.getElementById("campoCategoria").value;
ajaxReq.open("GET", url, true);
ajaxReq.send();
Quando o método utilizado para enviar dados ao servidor for o POST, os dados não mais devem ser enviados juntos com a URL, mas no corpo da mensagem. No caso do AJAX, isso é feito passando uma variável contendo os dados a serem enviados como parâmetro do método: send(...DADOS...). Além disso, na linha 30, troca-se o “GET” pelo “POST”. Segue abaixo o exemplo anterior modificado utilizando POST:
var url = "/AulasAjax1/Controlador/Ajax/Categoria";
var ajaxReq = new XMLHttpRequest();
var data = "categoria=" + document.getElementById("campoCategoria").value;
ajaxReq.open("POST", url, true);
ajaxReq.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
ajaxReq.send(data);
Nota: observe que antes de enviar os dados, o método setRequestHeader() foi chamado. Esse método serve para definir cabeçalhos HTTP que serão enviados ao servidor. O cabeçalho definido no trecho acima informa sobre a formatação dos dados que serão enviados ao servidor.
Versão 5.3 - Todos os Direitos reservados