Post提交和Get提交的区别

表单提交中get和post的区别

1. get: 把表单内各个字段均显示在URL中。

post:把表单内各个字段和内容放在html的header内一起传递给action所指的url,用户看不到。

2. get :安全性低。

post:安全性较高。

3. get : 由于get方式把所有参数均放在url中传递,而url长度又有限制。

    因此get方式传送数据量较小,不可以大于2kb.

post: 传送的数据量较大,一般不受限制。

4. get请求请提交的数据放置在HTTP请求协议头中,

post请求提交的数据则放在实体数据中;

5. 根据HTTP的规范:

get请求:用于信息的获取,而且应该是安全的和幂等的。

  安全的:该操作用于获取信息,而非改变信息。

  幂等的:对同一个URL的多个请求应该返回同样的结果。即从用户自身的角度来看,没有改变资源。

  post请求:可能改变服务器上的资源。

  以新闻站点为例:

  读者读取新闻应该以post请求实现,新闻站点的头版不断更新。虽然第二次请求会返回不同的一批新闻,该操作仍然被认为是安全的和幂等的,因为它总是返回当前的新闻。

  读者对文章的注解应该通过 post请求实现,因为在注解提交之后站点已经不同了(比方说文章下面出现一条注解);

时间: 2024-12-20 15:24:53

Post提交和Get提交的区别的相关文章

HTML提交方式post和get区别(实验)

HTML提交方式post和get区别(实验) 一.post和get区别 get提交,提交的信息都显示在地址栏中. post提交,提交的信息不显示地址栏中,显示在消息体中. 二.客户端代码 <!DOCTYPE html> <html> <head> <title>Form.html</title> <meta name="keywords" content="keyword1,keyword2,keyword3&

maven 项目提交时不提交.project target等一些文件

1.首先在myeclipse10中安装maven的插件,将插件放入D:\Program Files (x86)\myEclipse10\MyEclipse Blue Edition 10\dropins\maven中, 2. 新建文件:maven.link填入如下内容:path=D:/Program Files (x86)/myEclipse10/MyEclipse Blue Edition 10/dropins/maven 3.重启myeclipse插件安装成功. 4.在myeclipse10

【INSERT】逐行提交、批量提交及极限提速方法

在Oracle数据库中,不是提交越频繁越好.恰恰相反,批量提交可以得到更好的性能.这篇文章给大家简单展示一下在Oracle数据库中逐行提交于批量提交两者之间的性能差别.最后再给出一种可以极大改变性能的方法. 1.创建表t_ref,并初始化880992条数据,用于后面的实验.[email protected]> create table t_ref as select * from all_objects; [email protected]> insert into t_ref select

ASP.NET怎么防止多次点击提交按钮重复提交

今天做一个系统,由于服务器有点慢,所以常会被点击两次或三次,提交的数据就是多次了.所以要让按钮点击后,不能再次点击. 对于一个按钮,要让变成恢色的,只要this.disabled=true就可以了,可是在.NET里,添加了ONCLICK后,就无法提交信息了.所以要加上以下代码. <asp:Button ID="btnSub" runat="server" Text="回复" OnClick="btnSub_Click"

表单提交是ajax提交,PC提交没问题但是手机提交就会一直跳到error,并且也没状态码一直是0

真是被自己蠢死了button标签他会自动提交刷新页面 <form id="baoming_from"> <p>请填写您的个人信息</p> <ul> <li><label>姓       名:</label><input type="text" name="name" myAttr="姓名" maxlength="5"&

一个表单、多个提交按钮、提交到多个不同页面

<html> <head> <title>一个表单.多个提交按钮.提交到多个不同页面</title> </head> <script> function sm1(){ document.form1.action="1.php"; document.getElementByIdx("form1").submit(); } function sm2(){ document.form1.action=

post提交与get提交的一个小知识点

今天偶然发现post提交与get提交的一个小知识点,记下来以后可以看看. 将form表单的method的设置为get后,通过url传递的参数将不会被传递到服务器,例如1.ashx?a=123,的a=123在后台就读不出来: 但是如果将method设置为post后,在后台仍然可以读到a=123. post提交与get提交的一个小知识点

solr(软提交和硬提交)

 因项目用到了solr作为检索引擎,最近业务需求新增一个字段作为检索条件,由于该字段经常被修改到,并且关联的文档比较多,如果修改的时候立即修改索引,则时间会很久,网上查了很多资料,发现了解决方案,今天特此记录一番. 方案:采用软提交方式. solr4.x后引入了软提交solrfCommit. solr配置方式:在solrconfig.xml中设置 <updateHandler class="solr.DirectUpdateHandler2"> <!-- 如果设置au

Django Form组件实例:登录界面[Form表单提交,Ajax提交]

"""本例中使用Form和Ajax进行了数据提交,Form提交有一个问题,就是输入错误的数据,刷新之后原有的数据会丢失.注意到Form组件可以生成HTML标签,将Form生成的对象传到前端,就可以保留原有的内容,具体见下文:""" 1 from django.shortcuts import * 2 from app02 import models 3 import json 4 5 # Create your views here. 6 def