HTTP GET 与 POST 的区别
某厂面试归来,发现自己落伍了!>>> 什么是 GET 请求方法 ? GET 方法应该只用于读取数据。 浏览器直接发出 GET 只能由一个 url 触发,要在 url 之外带参数只能在 url 上带 querystring。 什么是 POST 请求方法 ? POST 方法是向指定资源提交数据,请求服务器创建或修改资源(如:提交表单和上传文件)。 表单的数据会被浏览器编码到 HTTP 请求中的 body 中,body 体中主要有以下两种格式。 1、application/x-www-form-urlencoded:传输简单的数据,"key1=value1&key2=value2"。 2、multipart/form-data:传文件,相对第一种编码方式处理文件这种二进制的数据更高效。 不是幂等,不能保证每次调用都能得到相同的结果。 幂等属性:GET、HEAD、PUT 和 DELETE HTML 标准对 HTTP 协议的用法的约定中要求,GET 把参数放在 URL 中传递,POST 将数据放在请求体中。 区别 GET POST 页面后退或刷新 无变化(因为有缓存数据) 数据需要重新提交 存为书签 ture 表单数据会丢失,需要重新提交 请求缓存 浏览器主动缓存 需要手动设置 保存在浏览器历史记录 ture false 编码类型 application/x-www-from