[网络相关] get请求和post请求的区别

前言:
我们在后台开发的时候,和前端交互离不开接口,也就是离不开get和post请求,这两个都是获取数据,但是在什么场合使用呢?下面我们就来看一看。

概念

POST

发送、提交。可以向指定的资源提交要被处理的数据。而POST请求过程中,先发一个请求头,服务器会先响应一次,然后浏览器再发送一次请求过程中会将正文数据带到服务器端,然后被服务器处理,然后再产生一个状态码,返回对应的状态描述。

GET

获取服务器数据。常通过URL请求的方式进行请求数据。GET请求过程中头和请求正文数据一起到服务器端。

特点

Get方式提交数据的特点:

  • 在url后面拼接参数,只能以文本的形式传递参数
  • 传递的数据量小,4kb左右
  • 安全性低,会将信息显示在地址栏
  • 速度快,通常用于对安全性要求不高的请求

Post方式提交数据的特点:

  • post提交数据相对于get的安全性高一些
  • 传递数据量大,请求对数据长度没有要求。
  • 请求不会被缓存,也不会保留在浏览器的历史记录中。
  • 用于密码等安全性要求高的场合,提交数据量较大的场合,例如上传文件、发布文章等。
  • post方式提交数据上限默认为8M

区别总结

  1. get请求重点在从服务器获取资源,而post请求重点在向服务器发送数据。
  2. get请求通过URL请求,以字段等于value的形式,用?连接置于URL之后。post传输数据是通过http的post机制,将字段与对应值封存在请求实体中发送给服务器,这个过程用户不可见,因此是安全的。
  3. get传输的数据量小,受URL长度的限制,但是效率高。post传输数据量不受限制,可以传输大量数据,所以传输文件时只能使用post,但是效率低。
  4. get请求只支持ASCII字符,因此向服务器传输中文有可能出现乱码。post支持标准字符集,可以正确传递中文符、二进制数据等。
  5. get请求的内容,浏览器会主动缓存,而post请求浏览器不会主动缓存
  6. 前端后退页面,get请求没有影响、post请求会再次提交请求。
  7. 数据在url中对所有人是可见的,数据不会显示在url中。

使用场景

一般对于登陆、注册等表单请求,不建议使用get方式请求,一般用于post请求,因为使用get请求一些参数信息会暴露出来会不安全。对于博客、论坛、数据的上传下载等最后也用于post,这些都会有产生数据的变化,故用post。一般对于有响应速度要求,并且对信息享队不敏感,如查询、搜索等,可以使用GET。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值