使用HTTP Post方法?

时间:2011-08-07 12:59:03

标签: http servlets post get

以下是http://hateinterview.com/java-script/methods-get-vs-post-in-html-forms/1854.html

处写的声明

根据规范,GET主要用于检索数据,其中POST用于数据存储,数据更新,订购产品甚至电子邮件

每当我使用get或post方法时,我使用它们来获取httprequest的getparameter()方法的参数。我没有得到上述声明,post方法如何用于数据存储或dataupdation我们无法用get方法实现。寻找一个非常简短的例子。

编辑:感谢大家的答案,但我特意寻找数据存储的意义,除了文件加载之外的post方法中的数据更新。

5 个答案:

答案 0 :(得分:2)

理论上,GET也可以存储和更新数据,但它根本不安全。只需将链接加入书签,链接或被搜索机构索引,即可轻松存储或更新数据。 POST请求不是可收藏的/可链接的,也不是搜索机器人索引的。此外,GET查询字符串的长度为limited,安全限制为255个字符。然而,POST请求主体可以大到2GB。此外,GET无法上传文件。

答案 1 :(得分:1)

一个区别是GET数据(在URL中,作为另一个答案所示)在* nix服务器上显示为环境变量QUERY_STRING的内容,而POST数据显示在stdin上。根据我的经验,无论它们如何打包和发送,GET和POST数据的格式都是相同的。

答案 2 :(得分:1)

@Mohit编辑了他的问题补充说:“谢谢大家的答案,但我特意寻找数据存储的意义,除了文件加载之外,在post方法中进行数据更新。”

阅读 rfc2616, Hypertext Transfer Protocol -- HTTP/1.1,特别是章节 9.3 GET 9.5 POST

“GET方法意味着检索...信息。”

“POST方法用于请求源服务器接受”信息。

要严格遵守rfc2616,请使用GET方法 从服务器 读取数据。使用POST方法 将数据写入 服务器。

“数据存储,数据更新的含义”就是这样。这怎么可能更明确或更明确?

答案 3 :(得分:0)

POST在正文中发送数据,而GET将数据放入URL ...

例如,要上传您使用POST的文件...由于GET将数据放入URL,因此数据对用户可见且长度有限。

请参阅示例http://www.cs.tut.fi/~jkorpela/forms/methods.html

答案 4 :(得分:0)

有些东西你无法用GET做!第一个是帖子你可以上传文件!
请参阅: Article this one