No contexto de objetos XMLHttpRequest, assinale a opção que contém dois métodos usualmente usados para disparar uma requisição para o servidor num ambiente Web.
- A)create() e go().
Errada: create() e go() nao sao metodos padrao do XMLHttpRequest para enviar requisicoes.
- B)header() e body().
Errada: header() e body() nao correspondem aos metodos usuais da API XMLHttpRequest.
- C)open() e send().
Certa: open() prepara a requisicao e send() a dispara para o servidor.
- D)set() e post().
Errada: set() e post() nao sao os metodos classicos do XMLHttpRequest.
- E)setRequest() e openRequest().
Errada: setRequest() e openRequest() nao existem como metodos usuais dessa API.
Gabarito: C
Quando voce trabalha com XMLHttpRequest, pense nele como o objeto classico do JavaScript para conversar com o servidor sem recarregar a pagina. O fluxo tradicional é bem direto: primeiro voce abre a requisicao com open() e, depois, envia com send(). Esses dois metodos sao os mais usados justamente para disparar a comunicacao no ambiente Web. O open() serve para configurar a requisicao, indicando o verbo HTTP, a URL e se a chamada sera assicrona ou nao. Ja o send() faz a requisicao sair do navegador e seguir para o servidor. Em geral, a ordem correta é essa: abrir, configurar e enviar. Se precisar mandar cabecalhos, ai entram outros metodos, como setRequestHeader(), mas isso nao substitui a dupla principal. Por isso, o gabarito C esta correto: open() e send() sao os metodos tipicamente associados ao disparo de uma requisicao via XMLHttpRequest. Esse é o comportamento consagrado pela especificacao do DOM e pela documentacao padrao da web, sem nenhuma novidade misteriosa de banca para atrapalhar a vida. Em prova, a FGV costuma cobrar o nome exato dos metodos e confundir voce com termos inventados ou com funcoes que parecem plausiveis, mas nao existem nessa API. Vale memorizar o par classico: preparar com open() e efetivar com send().