GET ou POST?

4 11 2007

Uma das maiores duvidas ao utilizarmos o objeto XMLHTTPRequest é: Qual a diferença entre os metodos GET e POST e quando usar um ou outro?

Em Teoria, o método GET deve ser usado quando a solicitação for idempotente, ou seja, varias solicitações retornarão o mesmo resultado. Na prática, se o método correspondente do servidor mudar o estado de alguma forma, provavelmente isso não ocorrerá. E esse é o padrão. A diferença mais pratica se da em termos do tamanho da carga – em muitos casos, os navegadores e servidores limitarão o tamanho do URL usado para enviar dados para o servidor; em outras palavras, evite mudar o estado do servidor com uma chamada GET.

Em geral, use o método POST sempre que estiver alterando o estado do servidor. Diferente de GET, você terá que configurar o cabeçalho Content-Type do objeto XMLHTTPRequest desta forma:

xmlHttp.setRequestHeader(“Content-Type”,”application/x-www-form-urlencoded”);

Diferente do que ocorre com GET, o POST não restringe o tamanho da carga que é enviada para o servidor e não há garantias de que as solicitações POST serão idempotentes.

Provavelmente a maioria das solicitações que você criará serão solicitações GET; no entanto, existe POST para o caso de você precisar usá-lo.

http://www.couto.zuntto.com


Ações

Informações

Uma resposta

4 08 2008

Deixe um comentário