其他分享
首页 > 其他分享> > 接口基础第三篇:HTTP协议

接口基础第三篇:HTTP协议

作者:互联网

HTTP请求方式

1 常见请求方式

 

 

 

常见的接口类型:

get

它本质就是发送一个请求来取得服务器上的某一资源。资源通过一组HTTP头和呈现数据(如HTML文本,或者图片或者视频等)返回给客户端。GET请求中,永远不会包含呈现数据。

格式:请求数参数写在网址后面,用"?"连接,多个参数之间用"&"连接;

场景:get型接口用于获取信息,多用于查询数据,如列表查询功能,点击查询按钮就调用一个get接口,然后把信息返回出来;

特点:1)请求数据量小,2)参数暴露于url地址中,故存在安全隐患。

 

post

post向服务器提交数据,这个方法用途广泛,几乎目前所有的提交操作都是靠这种方式完成。它用来向指定资源提交数据进行处理请求(例如:提交表单和上传文件),数据包被包含在请求体中,post请求可能导致新的资源的建立或者已有的资源的修改。

 

说明:向指定资源位置提交数据(如提交表单、上传文件)来进行请求,post请求可能会导致新资源的建立。场景:如注册、上传、发帖等功能,如用户在豆瓣网站对某本书进行收藏、写笔记、发表评论。

特点:请求数据量大,安全性高。

 

 

 

如,豆瓣的发表评论的开放api

POST

https://api. douban. com/v2/book/reviews

 put比较少见,HTML表单也不支持此方式。本质上来讲, put和post极为相似,都是向服务器发送数据,但它们之间有一个重要区别,put通常指定了资源的存放位置,而post则没有,post的数据存放位置由服务器自己决定,客户端向服务器传送的数据取代指定文档的内容。

 

 

 

说明:put请求用于向指定资源位置上传最新内容。

 

场景:如用户在豆瓣网站修改对某本书的收藏、修改某篇笔记或修改评论。

 

如豆瓣的修改评论的开放api。

PUT https:// api. douban. com/v2/book/review/ :id

delete

delete删除某一个资源,基本上这个也很少见,比如amazon的S3云服务里面就用的这个方法来删除资源。

 

 

说明:请求服务器删除请求里url所标识的资源;

 

场景:如用户在豆瓣网站取消对某本书的收藏、删除某篇笔记或删除评论;

 

如豆瓣的删除评论的开放api。

DELETE

https://api. douban. com/ v2/book/review/ :id

2 get请求与post请求的区别

 

 1.提交数据的形式

 2.提交数据的大小/长度

 3.提交数据的安全性

 

get方式安全性弱因为以下几个原因:

(1)登录页面有可能被浏览器缓存;

 (2)其他人查看浏览器的历史纪录,那么别人就可以拿到账号和密码;

 (3)当遇上跨站的攻击时,安全性的表现更差;

 4.编码方式

5.请求方式

 6.请求体

7.效率方面

 

8.请求过程

        1.浏览器请求tcp连接(第一次握手);

        2.服务器答应进行tcp连接(第二次握手);

        3.浏览器确认,并发送get请求头和数据(第三次握手,这个报文比较小,所以http          会在此时进行第一次数据发送);

        4.服务器返回200OK响应;

 

        1.浏览器请求tcp连接(第一次握手);

        2.服务器答应进行tcp连接(第二次握手);

        3.浏览器确认,并发送post请求头(第三次握手,这个报文比较小,所以http会在          此时进行第一次数据发送);

        4.服务器返回100 Continue响应;

        5.浏览器发送数据;

        6.服务器返回200 OK响应;

 

 

 

转自:https://mp.weixin.qq.com/s?__biz=MzI5MTg1NjA4Nw==&mid=2247486271&idx=1&sn=a97c366054f2c1432f37a8013f104b50&chksm=ec0b0087db7c8991a18fa1ec1894c72f0572b936035d7477e24f57500a1d27949476ad04d7af&scene=21#wechat_redirect

标签:第三篇,HTTP,请求,get,接口,服务器,浏览器,post,数据
来源: https://www.cnblogs.com/shukeshu/p/15501922.html