HTTP之请求方法

Zss 发表于:

常见的四种GET,POST,DELETE,PUT,其实也可以理解成对服务器上的数据库的查,增,删,改,当然也不完全是。。。

最重要的两个无疑是GET和POST了,这当然是最常见的也是必须去掌握的

GET一般用于获取/查询资源信息,而POST一般用于更新资源信息,也就是用于修改服务器上的资源的请求

最值得去深究的应该是GET和POST,他们之前最明显的区别在于:

1.数据量的大小

get请求无消息体,只能携带少量数据(也就是没body,数据大小为:1024字节)

post请求有消息体,可以携带大量数据(多了个body来存数据,数据到大小:无限制)

2.数据的存放位置

get请求将数据放在url地址中(数据存在url中)

post请求将数据放在消息体中(数据存放在body中)

3.安全性

受存放位置影响那么get的数据是直接展现在我们面前的,也就是url中

而post是表单形式存放,不显示在url中

另外,在进行登录操作,通过GET请求,用户名和密码都会暴露再URL上,因为登录页面有可能被浏览器缓存以及其他人查看浏览器的历史记录的原因,此时的用户名和密码就很容易被他人拿到了

4.操作区别

GET 请求一般不应产生副作用。就是说,它仅仅是获取资源信息,就像数据库查询一样,不会修改,增加数据,不会影响资源的状态

POST可以增加新的数据或者修改数据,会造成服务器上资源的变动,会影响资源的状态

 

总共有8中方法:

HTTP/1.1协议中共定义了八种方法(有时也叫“动作”),来表明Request-URL指定的资源不同的操作方式

1、OPTIONS
返回服务器针对特定资源所支持的HTTP请求方法,也可以利用向web服务器发送‘*’的请求来测试服务器的功能性
2、HEAD
向服务器索与GET请求相一致的响应,只不过响应体将不会被返回。这一方法可以再不必传输整个响应内容的情况下,就可以获取包含在响应小消息头中的元信息。
3、GET
向特定的资源发出请求。它本质就是发送一个请求来取得服务器上的某一资源。资源通过一组HTTP头和呈现数据(如HTML文本,或者图片或者视频等)返回给客户端。GET请求中,永远不会包含呈现数据。
4、POST
向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。 Loadrunner中对应POST请求函数:web_submit_data,web_submit_form
5、PUT
向指定资源位置上传其最新内容
6、DELETE
请求服务器删除Request-URL所标识的资源
7、TRACE
回显服务器收到的请求,主要用于测试或诊断
8、CONNECT
HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器