网络传输协议

指服务器和客户端之间进行通信是的约束和规范,客户端与服务端的数据交互不是杂乱无章的,需要遵照一定的规范进行。

常见协议

HTTP,HTTPS超文本传输协议
FTP文件传输协议
SMTP简单邮件传输协议

  • HTTP协议
    • 即超文本传输协议,网站是基于HTTP协议的,例如网站的图片、CSS、JS等都是基于HTTP协议进行传输的。
    • HTTP协议是由从客户机到服务器的请求(Request)和从服务器到客户机的响应(Response)进行了约束和规范。
    • 即HTTP协议主要由请求和响应构成。
1.png

常用请求方法 POST、GET、PUT、DELETE

请求报文

请求由客户端发起,其规范格式为:请求行、请求头、请求主体。

2.png
  • 1、请求行
3.png

由请求方式、请求URL和协议版本构成

  • 2、请求头

Host:localhost请求的主机
Cache-Control:max-age=0控制缓存
Accept:/ 接受的文档MIME类型
User-Agent:很重要
Referer:从哪个URL跳转过来的
Accept-Encoding:可接受的压缩格式

  • 3、请求主体
    即传递给服务端的数据

注:当以post形式提交表单的时候,请求头里会设置
Content-Type: application/x-www-form-urlencoded,以get形式当不需要

响应报文

响应由服务器发出,其规范格式为:状态行、响应头、响应主体。

4.png
  • 1、状态行
5.png

由协议版本号、状态码和状态信息构成

  • 2、响应头

Date:响应时间
Server:服务器信息
Content-Length:响应主体长度
Content-Type:响应资源的MIME类型

MIME是标识文件类型的,文件后缀并不能正确无误的标识文件的类型。
客户端与服务器在进行数据传输的时候都是以字节形式进行的,咱们可以理解成是以“文本形式”传输,这时浏览器就需要明确知道该怎么样来解析这些文本形式的数据,MIME就是明确告知浏览器该如何来处理。

  • 3、响应主体
    • 即服务端返回给客户端的内容;
      状态码
6.png

常见的有200代表成功、304文档未修改、403没有权限、404未找到、500服务器错误

调试工具

利用HTTP抓包工具在开发中可以帮我们进行调试,常用抓包工具HttpWatch、Fiddler、Charles、FireBug等
浏览器插件:
Firebug、HttpWatch、chrome dev tools
代理软件:
Charles、Fiddler

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

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,099评论 19 139
  • 本篇文章篇幅比较长,先来个思维导图预览一下。 一、概述 1.计算机网络体系结构分层 2.TCP/IP 通信传输流 ...
    涤生_Woo阅读 55,311评论 24 557
  • HTTP概述 超文本传输协议(HTTP,HyperText Transfer Protocol) 是互联网上应用最...
    曹渊说创业阅读 3,884评论 2 61
  • 指服务器和客户端间进行通信时的约束和规范。 常见协议: HTTP/HTTPS(超文本传输协议) FTP(文件传输协...
    MGd阅读 348评论 0 0
  • 网络传输协议概念 网络传输协议或简称为传送协议,是指计算机通信或网络设备的共同语言。现在最普及的计算机通信为网络通...
    布尔教育阅读 604评论 0 2