- 论坛徽章:
- 0
|
关于get和post
对于servlet新手来说,选择doGet还是 doPost,这里有篇文章.
用什么方法把表单中的数据传递给服务器进行处理呢?有两种方法,post和get.
如果采用post,浏览器将会按下面两步来传递数据。首先浏览器建立和action属性中指定的表单处理服务器的连接,一旦建立起该连接,浏览器就会按分段传输的方法将数据传递给服务器。
在服务器端,一旦应用程序开始执行,它们会从一个标准的地方来读取参数。而一旦读到数据,在应用程序能够处理这些表单数据以前,这些数据必须要解码,服务器会指明应用程序期望如何受到这些参数和依据。
另外一种情况是采用get方法。浏览器会建立和标单处理服务器的连接,然后直接在一个传输步骤中.发送所有的表单数据。浏览器会将数据直接附在表单的action url之后,同时两者中间用问号来分割。
一般浏览器都会用上述任何一种方法来传输表单信息,而一些网络服务提供商只接受一种或另一种方法提供的数据。可以在<form>;标签的method属性中设置表单处理服务器用什么方式来处理数据,post或是get.
您该如何选择:
如果想获得比较好的表单传输性能,对只有几个字段的那些小表单,采用get。
由于一些server的OS会限制命令行参数的数量和长度,而这些参数会直接传给应用程序,在这种情况下,对那些有许多字段或是有很长的文本内容的表单来说,应采用post。
由于post需要解码,所以不推荐新手使用。
如果安全性很重要,那么请使用post方法.get将表单直接放在url上会造成一些信息的泄露。而post就没有问题.
如果想在表单外调用包括给表单传递参数这样的server端的应用程序的话,采用get吧。因为这允许把表单这样的参数包括进来作为url的一部分。而另一方面,post方法的应用程序在url后却希望还能有一个来自浏览器的独特的传输过程,传输一些在传统<a>;标签下不能做的东西 。
如果有不详细的,请高手补充,谢谢. |
|