根据 HTTP 规范,当您使用表单更改服务器端某些内容的状态时,应使用 POST 方法。例如,如果一个页面有一个表单允许用户添加自己的评论,就像此页面一样,则表单应使用 POST。如果您在通过 POST 访问的页面上点击“重新加载”或“刷新”,则几乎总是错误的——您不应该两次发布相同的评论——这就是为什么这些页面不会被添加书签或缓存的原因。
当您的表单获取服务器上的某些内容并且实际上没有更改任何内容时,应使用 GET 方法。例如,搜索引擎的表单应使用 GET,因为搜索网站不应更改客户端可能关心的任何内容,并且将搜索引擎查询的结果添加书签或缓存与将静态 HTML 页面添加书签或缓存一样有用。