IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 计算机协议-http -> 正文阅读

[网络协议]计算机协议-http

  • 协议的含义
    计算机之间通过网络实现通信,国际标准化组织(iso),设计出osi模型,TCP/IP网络模型,

  • 常见的协议
    1 ftp 文件传输协议,在网络上进行文件传输的的协议,在应用层,
    2 http 请求-响应协议,客户端发送请求服务器作出响应,
    3 dns 域名系统 在万维网上作为域名和ip地址相互映射的一个分布式数据库,

  • 传输协议
    传输层提供了进程之间的逻辑通信,传输层向高层屏蔽了网络层的核心细节,是应用程序看起来像是两个实体之间进行逻辑通信,
    1tcp协议:传输控制协议,面向连接,可靠的,基于字节流的传输层通信协议,
    2 udp协议:报文协议,不可靠连接,

  • TCP协议传输特点
    tcp是可靠的传输协议,因为创建连接时要经历三次握手,断开时要经历四次挥手,
    三次握手是tcp在连接客户端和服务器端要发送三个包来确定连接,
    四次挥手是tcp在终止连接时,断开时客户端要和服务器发送四次包确认才会断开,

  • 服务器端口
    ip地址是用来标识网络上的通行设备,而端口就是用来识别同一台计算机中不同的应用程序,也被称为是程序地址,
    端口号范围是0~65535 ,公认端口号0 ~ 1023,注册端口是 1024 ~ 65535

  • 查看系统中的应用端口号
    如何处理端口号被抢占的问题:输出cmd进入命令行中,输入netstat -ano|findstr “端口号” 可以看到该端口号使用的进程pid信息,
    找到pid信息后可以杀死一个进程,

  • 数据包和处理流程
    网络中通信传输数据的单位是包,数据包中含有包,帧,段,消息,
    处理流程中要经过应用层,传输层,网络层,数据链路层,物理层,数据到达每一层都会有每一层的首部标识,
    在这里插入图片描述

  • HTTP协议
    超文本传输协议,用来将文本和文本内容来做出显示,一般是客户端和服务器来做请求和响应的协议,
    特点是:1 无连接,一次请求,释放一次,每次请求连接只能处理一次,2 单向性,服务器永远是被动的,3 无状态,对于事务处理没有记忆,通常为了弥补这个缺点会使用Session和Cookie,

  • URL
    统一资源定位符,用来标识网络上的资源,由5个元素组成:
    1 传输协议 2 服务器地址或是域名 3 端口号 4 资源路径 5 传递数据(参数)
    格式 协议:// ip:port/路径?key=value&key=value
    浏览器输入一个url会发送一个Request,服务器会返回一个Response里面有html资源,

  • request
    请求消息分为三部分,Request line,Request header,Request body,注意request header和Request body之间有空行,
    在这里插入图片描述

  • Host 自己访问的地址ip/域名

  • conecton是代表连接方式 close表示是短连接,keep-alive是长链接, Connection: keep-alive

  • Cache-Control 指定请求和响应的缓存机制,Cache-Control: private

  • user - agent 浏览器表明自己的身份: User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36

  • Accept 告诉服务器自己可以接受什么类型的文件 / 表示任何类型,type/* 表示该类型下的所有子类型,

  • Accept-Encodeing 浏览器声明自己接受的编码方法,

  • Accept-language 浏览器声明自己接受的语言,

  • 请求体
    是客户端传递给服务器的数据,

  • 请求方式
    1 get : 向指定资源发出显示请求,get请求会将请求中传递的数据放在url上,可以被浏览器缓存
    2 post:向指定资源发送提交数据,请求服务器进行处理,数据会放到请求体中,不会被浏览器缓存的,
    3put: 向指定资源位置上传数据,
    4 delete : 请求服务器删除url标识资源

  • get和post请求的特点
    1 get产生的url可以被缓存 post不可以,
    2 get中的url包含的参数长度是有限制的,而post没有,
    3 get不安全,post安全
    4 get参数通过url来传递,post放在request body中,

  • Response
    三部分组成 Response line,Response header, Response body
    响应中的状态码:1xx 表示服务器可以收到请求,继续操作请求,2xx是成功,请求发送到达成功接收并处理,3xx 重定向 4xx 客户端错误 5xx 服务器错误。
    示例 200 : ok 400:url语法错误 401:验证身份 403:拒绝 404:没有找到 500:服务器内部错误

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-09-29 10:41:46  更:2021-09-29 10:44:13 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年9日历 -2024/9/21 6:53:31-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码