Get和Post的区别
Get和Post的区别HTTP 定义了与服务器交互的不同方法,最基本的方法是 GET 和 POST,其中get是从服务器上获取数据,post是向服务器传送数据。
两者的具体的区别有
1、数据传送方式
get方式:表单数据存放在URL地址后面。所有get方式提交时HTTP中没有消息体。get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。
post方式:表单数据存放在HTTP协议的消息体中以实体的方式传送到服务器。通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址,用户看不到这个过程。
2、服务器获取数据方式
GET方式:服务器采用request.QueryString来获取变量的值。
POST方式:服务器采用request.Form来获取数据。
两种方式的参数都可以用Request来获得。
3、使用 Get 的时候,参数会显示在地址栏上,而 Post 不会
所以,如果这些数据是中文数据而且是非敏感数据,那么使用 get;如果用户输入的数据不是中文字符而且包含敏感数据,那么还是使用 post为好。
4、使用环境
当请求仅仅是对数据进行查询或搜索(无隐私)的时候用get方式,比如我们点击下一页时,(链接默认也是一种get提交方式);
当请求需要向数据库插入信息(插入留言、上传文件等)时用post(这样相对安全而且保证更大的信息量)
5、Get请求特性
它会将数据添加到URL中,通过这种方式传递到服务器,通常利用一个问号?代表URL地址的结尾与数据参数的开端,后面的参数每一个数据参数以“名称=值”的形式出现,参数与参数之间利用一个连接符&来区分。
6、Post请求特性
数据是放在HTTP主体中的,其组织方式不只一种,有&连接方式,也有分割符方式,可隐藏参数,传递大批数据,比较方便。