不得不学的http协议

一、前言

只要你做web开发,不管是前端还是后台,http协议都是必须掌握的。网上的长篇大论已经够多了,我们今天就用十分钟的时间,用最简洁的语言让您从不懂http协议到掌握http协议。

二、什么是协议

协议说白了就是双方都认同的一个规定。比如A和B确定了一个协议:“A给B一个耳光,B就得给A一百块钱”。虽然这个协议有点扯,但是A和B都认同了,那就得执行,只要B活着,A就可以随便抽他,并且获取那一百块。

http就是一个协议,这个协议是客户端和服务器端认同的。客户端要东西(请求),服务器端就得给(响应)。

三、请求和响应

客户端希望向服务器端要东西,需要发送一个请求,服务器接到了这个请求,就会响应对应的内容。

举个例子:比如我们访问百度首页,首先打开浏览器(浏览器就是客户端),然后输入地址,然后按回车,当我们按回车的时候,其实就是向百度的服务器发送了一个请求,服务器接到这个请求,就会给予一个响应,响应的内容就是百度首页的html代码,然后浏览器将html代码转换成页面,用户就可以看到百度的首页了。

浏览器发送请求的方式有哪些呢:

直接在地址栏输入地址,然后按回车。

点击a标签,跳转页面。

提交表单

JavaScript实现页面跳转

XMLHttpRequest

img标签或script标签的src属性可以请求资源。

只要服务器接到上面6条的任意一条请求,都会做出响应,返回对应的内容。可能是一个网页,一个json数据,一张图片。

(顺便说一下,上面第5条是ajax的基础,第6条是jsonp的基础。)

四、请求的方法

上面介绍了六种发送请求的方式,其实发送请求还有两个常用方法:get和post,两个方法的区别网上一搜一大把,这里就不重复了,在这里大家只要知道,get请求和post请求都是请求,都能得到响应就行了,结合上面的内容,再来归纳一下:

直接在地址栏输入地址,然后按回车--只能是get请求

点击a标签,跳转页面--只能是get请求

提交表单--可以通过表单的method属性设置get或post请求

JavaScript实现页面跳转--只能是get请求

XMLHttpRequest--可以是get或post

img标签或script标签的src属性可以请求资源--只能是get请求

五、总结

初学http协议,就把他总结成一句话:客户端发送请求,服务器响应数据。理解这句话,http协议就算入门了。

这些知识点都比较抽象,如果希望切身的体会请求和响应的过程,最简单的方法就是用chrome的抓包工具看看请求和响应的内容。

ajax可以说是http的实现,用代码模拟一下请求和响应的过程,更有助于理解http协议。

六、尾声

每天十分钟,进步一点点,感谢您的预览,如果喜欢,可以关注【晓舟报告】,获取更多微技术。

原文链接

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,253评论 19 139
  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 11,297评论 6 13
  • 一、概念(载录于:http://www.cnblogs.com/EricaMIN1987_IT/p/3837436...
    yuantao123434阅读 8,553评论 6 152
  • Http协议详解 标签(空格分隔): Linux 声明:本片文章非原创,内容来源于博客园作者MIN飞翔的HTTP协...
    Sivin阅读 5,270评论 3 82
  • http协议有http0.9,http1.0,http1.1和http2三个版本,但是现在浏览器使用的是htt...
    一现_阅读 1,927评论 0 3