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 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 书到用时方恨少~网络原理面试参考 -> 正文阅读

[网络协议]书到用时方恨少~网络原理面试参考

客户端与服务器:

  • 客户端主动发送请求(request),服务器被动接受请求并作出响应(response)
  • 通信方式:一问一答、多问多答、一问多答

协议

  • 两个不同的程序,互相理解请求或响应内容的含义,相当于制定一致的规则

TCP/IP 五层结构(TCP/IP协议栈):

应用层代码中约定两台主机之间传输数据的格式
传输层不考虑传输的中间过程,只考虑起点和终点如何进行传输
网络层比较远的两台主机,怎么一步一步把数据传过去
传输层数据链路层相邻主机之间的通信
物理层物理设施,网线、光纤、电磁波等

? http协议是应用层协议是典型的“一问一答”工作模式

URL:https://gitee.com/kelehaowa 平时说的网址

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-N4j3EVdT-1631186638718)(/Users/cola/Library/Application Support/typora-user-images/image-20210909105632998.png)]

  • 域名通过DNS机制自动转成IP地址(好处是方便用户好记)
    1. http服务器通常部署在80端口
    2. https服务器通常部署在443端口
  • URL小结:
    • IP地址:服务器在哪
    • 端口号:服务器上的哪个程序
    • 带层次的路径:这个服务器上的哪个资源
    • 查询字符串(query string):资源里面的一些细节内容

http协议具体的格式

HTTP请求:

  • 首行(请求行):方法,URL,版本号
  • 请求报头(header):键值对 冒号空格分割
  • 空行:header的结束标记
  • 请求正文(body)-- 正文可以省略

HTTP响应:

  • 首行(状态行):版本号,状态码,状态码的描述
  • 响应报头(header)
  • 空行
  • 响应正文(body)-- 正文可以省略

请求最常用的就是get 和 post

  • get方法一般用于“从服务器获取数据”
  • post方法一般用于“往服务器上提交数据”

请求头:

  • 空行:相当于请求头的结束标记
  • 请求正文(body):
    1. 对http的get请求来说,一般没有body,可以有query string,也可以没有
    2. 对于http的post请求来说,一般是有body,一般是没query string,需要提交给服务器的信息都是放到body(正文)部分中的

常用的状态码:

  • 200 OK 访问成功
  • 404 Not Found 要访问的资源没找到
  • 403 Forbidden 要访问的资源,没有权限
  • 500 Internal Server Error 服务器挂了
  • 302 Move temporarily 重定向

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Zh0qGZRQ-1631186638719)(/Users/cola/Library/Application Support/typora-user-images/image-20210909130025848.png)]

http协议的核心内容:浏览器按照这样的格式构造一个字符串,发送给服务器,相当于“发送一个http请求”;

服务器也是构造一个符合这种格式的字符串,返回给浏览器,相当于“返回了一个http的响应”

get 和 post的区别:本质上两者没有区别,实现的场景差不多一样;

  1. get一般把用户自定义的数据放到query string,pget一般没有body

    post一般把用户自定义的数据放到body,post一般有body

  2. get一般设计成“幂等的”

    post设计的时候不必考虑“幂等”

  3. get请求可以被缓存

    post请求一般不可以被缓存

  4. get请求可以被浏览器收藏夹保存起来

    post请求,不能被收藏夹保存(保存的时候,body部分就没了)

cookie:

  • 它是一个字符串,键值对结构的字符串,在浏览器里面保存着(每个域名/地址下都有自己的Cookie)

  • cookie的内容来自于服务器

    • http响应中,有一个或多个set-cookie字段,里面的内容就会被浏览器保存下来
  • cookie会在下次请求的时候自动

    • 浏览器保存好服务器返回的cookie之后,如果下次再访问这个服务器,此时请求中就会自动加上cookie这个字段,字段里面的值就是之前从服务器这边返回的值
  • cookie应用场景:用户身份

    服务器同一时刻会收到大量的http请求,这些请求分别都是来自于哪个用户,服务器必须要明确的识别出来

session 和 cookie的区别:

  • cookie是客户端的概念
  • session是服务器的概念

Https

  1. http是明文传输,特别危险
  2. https是基于http引入了一套加密方案

?

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-09-10 11:12:15  更:2021-09-10 11:12:33 
 
开发: 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年11日历 -2024/11/25 23:48:27-

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