应用层

应用层是TCP/IP五层(四层)模型的最顶层,主要负责程序间的沟通,如简单电子邮件传输(SMTP),文件传输协议(FTP),网络远程访问协议(Telnet)等,网络编程主要就是针对应用层

HTTP协议——超文本传输协议

1 HTTP协议介绍

HTTP协议是程序员自己定义的一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型。HTTP是一个无状态的协议。
HTTP协议(HyperText Transfer Protocol)是用于从WWW服务器传输超文本到本地浏览器的传送协议。它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。

2 URL介绍
2.1 URL格式及字段


其实我们俗称的“网址”就是URL,详细见上面图中的例子
(1)协议方案名:访问网站时所遵循的协议,通常为http、https
(2)登录信息:一般格式为 用户名:密码,但是这项一般都省略
(3)服务器地址:访问的网站所在的主机地址,域名
(4)服务端口号:服务器程序是该主机中的哪个进程,由端口号给出。HTTP的默认端口号为80,可以省略
(5)带层次的文件路径:所请求文件在主机的路径,其中第一条 / 表示Web的根目录
(6)查询字符串:?之后的为查询字符串,表示请求的内容(若没有,可省略)
(7)片段标识符:可省略

2.2 urlencode和urldecode

在上面了解过URL的格式后,但是在查询一些包含特殊字符的信息时却看到一些不一样的信息


在问号?后面的字段是查询字符串,我们查询的内容为C++,那么在问号后面显示的信息应该为wd=C++,但是实际上显示的内容为wd=C%2B%2B,这是为什么??
因为在URL中本身是包含一些字符的,所以URL就规定在参数中出现的特殊字符必须进行转义——将字符变为16进制,然后从右到左取四位,每两位做一位,前面加上%,所以就变为上面的格式了

3 HTTP协议格式

HTTP协议分为HTTP请求和HTTP响应,因此两种格式也不相同,但是大体分为四部分

3.1 HTTP请求格式

主要分为四部分:
(1)请求行:在HTTP请求报文中第一行,以空格为界,分为三个区域:【请求方法,常为GET/POST】+【请求的资源URL】+【HTTP协议版本,常为1.0/1.1】;
(2)请求报头Header:在HTTP请求报文中从第二行到空行之前的即为请求报头,是请求属性,均以冒号分割的键值对形式呈现,每组属性间用 \n 分隔;
(3)空行:表示报头已完,不能省略
(4)请求正文Body:空行以后的均是请求正文,表示要提交给浏览器看的消息,允许为空字符串。
其中:
1)GET方法:请求消息在正文中
2)POST方法:请求消息在报文中

3.2 HTTP响应格式

主要分四部分:
(1)响应行:在HTTP请求报文中第一行,以空格为界,分为三个区域:【协议版本号】+【状态码】+【状态码解释】;
(2)响应报头Header:在HTTP请求报文中从第二行到空行之前的即为请求报头,表示请求的属性;
(3)空行:表示报头已完,不能省略;
(4)响应正文Body:空行以后的均是请求正文,允许为空字符串,这部分内容为真实能够看到的(HTML/JS/CSS页面)

下面是一个实例

4 HTTP的方法

5 HTTP状态码


比较常见的状态码:200(OK),404(Not Found),403(Forbidden),302(Redirect,重定向)

TCP/IP五层(四层)模型——应用层相关推荐

  1. TCP/IP协议四层模型知识

    OSI七层和TCP/IP四层的关系 OSI七层模型是理论上的分层方式,而四层模型是实践过程中的分层模型. OSI七层模型ISO(国际标准化组织)提出的一套理论性的网络标准化协议,可以把它看成一本教科书 ...

  2. 计算机网络学习之TCP/IP五层协议模型、TCP和UDP

    一.TCP/IP五层协议 TCP/IP 五层协议和 OSI 的七层协议对应关系如下: 应⽤层 (application layer):直接为应⽤进程提供服务.应⽤层协议定义的是应⽤进程间通讯和交互的规 ...

  3. TCP/IP协议 | 四层模型

    目录 TCP/IP四层模型 TCP/IP格式 IP包格式 TCP报文 UDP数据段 SYN攻击 HTTP协议 ICMP协议 子网掩码 长连接与短连接的区别 TCP Fast Open TCP报文如何传 ...

  4. OSI七层模型及TCP/IP网络四层模型

    文章目录 前言 一.OSI七层模型 二.TCP/IP四层参考模型 总结 前言 网络的参考模型,ISO七层模型.TCP/IP四层模型等,我跟大家一样也只是草草的了解,并没有全面的掌握,今天学习一波. 一 ...

  5. TCP/IP五层协议模型的萌新解释

    上了计算机网络课之后我一直觉得,TCP/IP的五层模型是很让我费解的东西,以至于我到最后都没怎么明白这门课. 然后这几天主要是因为疫情,在家实在无聊,于是决定重新开始研究这个东西.而后突然恍然大悟一般 ...

  6. OSI七层模型和TCP/IP协议四层模型

    1 OSI 七层模型 OSI (open System Interconnect  开放系统互联)七层网络模型 称为开放式系统互连参考模型,是一个逻辑上的定义,一个规范,他把网络从逻辑上分为7层.每一 ...

  7. TCP/IP协议四层模型

    TCP(传输控制协议)/IP(网际协议) 简介 TCP/IP协议是一系列网络协议的总和:包括:TCP,IP,UDP,ARP等,这些被称为子协议.在这些协议中,最重要.最著名的就是TCP和IP.因此,大 ...

  8. (chap2 TCP/IP基础知识) TCP/IP协议分层模型-应用层

    应用层--会话层以上的分层 1. C/S模型 2. WWW (World Wide Web) WWW 中的HTTP是OSI应用层的协议,HTML属于表示层的协议. 3. 电子邮件 SMTP (Simp ...

  9. tcp/ip五层协议模型

    每一层都呼叫它的下一层提供的网络来完成自己的需求.(如果是四层模型数据链路层和物理层在一层) 1.物理层:负责光电信号传递方式.集线器工作在物理层.以太网协议. 2.数据链路层:负责设备之间的数据帧的 ...

  10. 速记TCP/IP五层模型

    速记TCP/IP五层模型 前言 一.TCP/IP四层模型 二.TCP/IP五层模型(重点) 物理层 数据链路层 网络层 传输层 应用层 三.OSI 七层模型 总结 前言 通过阅读本文,可以实现快速了解 ...

最新文章

  1. 弱监督语义分割--Object Region Mining with Adversarial Erasing
  2. c#编译器对byte类型的一些规则 (转)
  3. 如何用Windows Live Writer写网易博客
  4. 1020:打印ASCII码
  5. [iOS] 完整源码, Swift语言 - 账号保存工具
  6. LeetCode-----重建二叉树
  7. PYTHON读取EXCEL内容再转变成HTML添加到OUTLOOK中
  8. 深度学习之神经网络(一)
  9. Android 安卓益智休闲源码
  10. java jcmd,jcmd命令用法
  11. win10设置开机默认开启数字小键盘2022
  12. 中国互联网20年简史(1998-2018),告诉你本质是什么、规律是什么
  13. GIS招聘 | 甘肃、海南、辽宁、内蒙古地震局
  14. pandas 行列转换
  15. WIN系统仿MAC任务栏工具分享——RocketDock
  16. mysql cbrt函数_Hive FUNCTIONS函数
  17. bert获得词向量_NLP中的词向量对比:word2vec/glove/fastText/elmo/GPT/bert
  18. A - Chess Placing
  19. 华为路由器接口如何区分_华为路由器的usb接口是什么意思
  20. 2023中国海洋大学计算机考研信息汇总

热门文章

  1. 公募基金核心生产业务超融合转型实践
  2. 【C语言篇】初识C语言
  3. HTML小案例之太极两仪图画法
  4. 如何实现外网访问ftp
  5. 【并行计算-CUDA开发】CUDA线程、线程块、线程束、流多处理器、流处理器、网格概念的深入理解
  6. 图形图像制作专业发展目标和思路
  7. 虚拟宠物猫(java)
  8. 给你的电脑降降温!!!!!!
  9. logo设计中的文字有哪些技巧
  10. 设计模式学习笔记1——概述 UML图 软件设计原则