2011-01-12 14 views
6

Entiendo completamente las diferencias entre los dos en términos de manejo de formularios, discreción del usuario y privacidad de los datos, pero ¿en qué situación alguien más usaría GET sobre POST al enviar los resultados del formulario?GET frente a POST (procesamiento de formularios)

Gracias

+0

posible duplicado de [¿Cuándo se utiliza POST y cuándo se utiliza GET?] (Http://stackoverflow.com/questions/46585/when-do-you-use-post-and-when- do-you-use-get) – lonesomeday

Respuesta

6

GET coloca los parámetros en la URL, permitiendo que todos la vean. Si bien POST sería ideal para inicios de sesión y datos sensibles a la seguridad, GET es ideal cuando desea que se marque una página dinámica.

Tome un foro por ejemplo. El hilo que muestra todas las publicaciones dentro de él se carga dinámicamente. No existe una página para cada hilo disponible, es decir, se deben proporcionar parámetros que indiquen qué hilo cargar. Estos parámetros se pasan usando GET para que pueda marcar la página y esa URL exacta con los parámetros proporcionados se usará nuevamente para cargar la página.

1

si necesito que el usuario puede guardar un favorito del siguiente paso/página (por cualquier razón) Me gustaría usar GET aparte de eso, probablemente Post.

Ambos son inseguros y debe escapar de ambos.

2

Por ejemplo, para hacer que los datos del formulario sean visibles en los registros.

+0

Has publicado lo que voy a escribir :) –

11

W3C HTML 4.01 Recommendation on the appropriate usage of GET and POST:

El método "obtener" debe usarse cuando la forma es idempotente (es decir, no causa efectos secundarios). Muchas búsquedas de bases de datos no tienen efectos secundarios visibles y son aplicaciones ideales para el método "obtener".

Si el servicio asociado con el procesamiento de un formulario causa efectos secundarios (por ejemplo, si el formulario modifica una base de datos o una suscripción a un servicio), se debe utilizar el método "publicar".

Nota:El "llegar" método restringe valores ajustados datos del formulario a caracteres ASCII. Solo el método "publicar" (con enctype = "multipart/form-data") se especifica para cubrir todo el juego de caracteres [ISO10646].