2010-11-07 73 views
2

当评估表单提交时,我检查该方法是发布的,没有得到。我被告知这是一个很好的方式来知道表单是通过单击提交按钮来提交的,并且它不仅仅是通过在URL中传递数据的脚本提交的。发布表单时发布与放置

“put”方法如何。这似乎与“后”非常相似。它可以或多或少的被用来代替“邮政”而没有太多的损失“邮政”提供的好处?

+0

的可能重复的是不支持[是PUT,DELETE,HEAD ,等等方法在大多数网络浏览器?](http://stackoverflow.com/questions/165779/are-the-put-delete-head-etc-methods-available-in-most-web-browsers) – 2010-11-07 12:09:00

+0

Errmm。 ..以下是不正确的:“我被告知这是一个很好的方式来知道表单是通过单击提交按钮提交的,并且它不仅仅是通过将URL中的数据传递给脚本的脚本提交的。”请参阅维基百科上的CSRF:“对GET和POST使用HTTP指定用法,GET请求永远不会产生永久效果,这是很好的做法,但不足以防止CSRF。攻击者可以编写JavaScript或ActionScript,以不可见的方式提交POST表单目标领域“。 – thejh 2010-11-07 12:11:47

+0

@Pekka,我现在没有真正关心浏览器的兼容性。那之后我更关心舞台。例如,如果它受到支持并且浏览器可以检测到它,那么在Web应用程序本身之后会发生什么,具有安全性。比文章弱一些,还是差不多呢? – samuel 2010-11-07 12:12:37

回答

8

HTML only supports post and get as form methods,即使HTTP有其他。

即使在HTML表单的上下文之外,答案仍然没有,因为PUT和POST是非常不同的。 POST是一个通用的“这是一些数据,用它做些什么”的方法,而PUT的意思是“用这个数据替换这个URI的资源”。

0

如果出于安全考虑,GETPOST并不重要。阅读关于XSRF预防维基百科的文章:http://en.wikipedia.org/wiki/Cross-site_request_forgery#Prevention

+0

实际上部分安全原因,但我想知道post和put之间的区别(不是get和post)。我想验证帖子和投票是否差不多。我给你写了一封回复你原来的评论。 – samuel 2010-11-07 12:18:08

0

有放和岗位安全...... 之间没有什么不同,但把一些服务的