当前位置: 首页 > news >正文

HTTP基础介绍+OSI七层参考模型+HTTP协议介绍

                                                                图片来源于网络

                                                                 图片来源于网络 

浏览器

        Chrome:谷歌浏览器,推荐

        Safari(WebKit):苹果浏览器,iOS,macOS

        Firefox:火狐浏览器,开源插件特别多(FireBug)

        IE:Windows系统下

        Opera:欧朋

        网景:早期浏览器

长连接和短连接

        短连接(HTTP)

                需要数据交换时,连接服务器,数据交换完成后,断开连接

        长连接

                客户端和服务器一开始会进行连接,并一直保持连接,直到不再和服务器交换数

                据时,会断开连接由服务器向客户端推送数据

带宽计算

        运营商带宽:比特(bit)带宽

        实际带宽:字节(byte)带宽

通讯协议

        IP协议

                用于网络定位的一个数据串

                IPV4与IPV6

                公网IP:可以被全球互联网访问的IP地址

                局域网IP:用于接入私有网络的IP地址

        TCP协议

                连接时,三次握手

                断开连接时,四次挥手

                传输数据时,会进行完整性校验

         TCP的“三次握手”

                                                                图片来源网络 

        TCP的“四次挥手”

                                                                图片来源于网络 

        UDP协议

                无连接

                无完整性校验(需要在应用层进行校验)

        C#创建字节流(字节数组)

                byte[] data=new byte[1024];

常见的网络服务

        Samba服务:文件共享

        DHCP服务:IP地址池服务

        DNS服务:域名解析服务

        POP3/SMTP:邮件服务

        FTP:文件传输服务(服务器工程师会使用FTP服务将AB包传到服务器上供用户下载)

        SVN/Git:团队开发协作文件共享

HTTP协议

        超文本传输协议

        基于TCP协议开发

        用于传输HTML语言(早期)传输各种文本(JSON,XML)

        短连接

HTTPS协议

         HTTP敏感数据传参会被加密,更安全

        证书可以帮助浏览器鉴别钓鱼网站

HTTP协议构成

        URL结构

                通讯协议:

                        "http://"

                        "https://"

                主机地址:

                        IP:39.156.70.239 

                        域名:www.baidu.com

                端口号:

                        “:80”:提供HTTP服务的端口

                        “:443”:提供HTTPS服务的端口

                目录

                        “/目录名”:服务器脚本在服务器上存储的路径

                脚本名称

                        "index.php"

                URL参数

                        “?参数名=参数值&参数名=参数值”

                        注意

                                以?开头

                                参数名=参数值

                                多个参数以&分割

                                URL地址可以进行伪装(用户看到假地址,服务器内部进行转换)

        HTTP元数据

                username=admin&password=123

        HTTP状态号

                http://www.w3school.com.cn/tags/html_ref_httpmessages.asp

                200:成功

                301:重定向(当前页面已过时,跳转到新的页面)

                403:对被请求页面的访问被禁止

                404:服务器无法找到被请求的页面

                *500:服务器内部错误(服务器代码有错)

                502:服务器从上游服务器收到一个无效的响应(访问量过大,不能提供服务的就会

                收到)

        HTTP请求类型(GET和POST的区别)

                http://www.w3school.com.cn/tags/html_ref_httpmethods.asp

                请求头:客户端向服务器发送数据的报(数据报)头

                响应头:服务器向客户端发送回来的报头

                

                *Get和Post:Get的数据是通过URL地址传递的,Post的数据是通过HTTP数据头传递的

                区别

                        GET传递的数据会被浏览器和搜索引擎记录,不安全(被记录)

                        POST传递的数据,记录在请求头部中,相对安全

                        GET能够传递的数据量受到URL最大长度的限制

                        POST可以传递任意长度的数据(服务器会有限制)

        URLEncode

                如果需要在URL传递数据中加入特殊字符,就需要对数据进行URL编码

                UnityWebRequest.EscapeURL()

                

      该系列专栏为网课课程笔记,仅用于学习参考。                

http://www.xdnf.cn/news/261865.html

相关文章:

  • 【Elasticsearch】实现气象数据存储与查询系统
  • 总账业务数据——Part 1
  • 单片机嵌入式CAN库
  • 在 Ubuntu 上安装 cPanel
  • 【Qt】初识Qt
  • 【科研绘图系列】R语言绘制世界地图(map plot)
  • 在多线程环境下如何设计共享数据结构保证原子操作与数据一致性
  • 第十章:反击的序曲(续)
  • JavaScript性能优化实战(8):缓存策略与离线优化
  • JavaScript:pc端网页特效--元素偏移量offset系列
  • flask 获取各种请求数据:GET form-data x-www-form-urlencoded JSON headers 上传文件
  • 每天学一个 Linux 命令(35):dos2unix
  • SMT贴片检验标准核心要点与实施规范
  • MySQL进阶(三)
  • 欺骗单页应用(SPA)渲染隐藏路由 -- trouble at the spa b01lersCTF
  • Ubuntu 24.04 完整Docker安装指南:从零配置到实战命令大全
  • NuttX 与 PX4 系统开发全流程详解
  • 《AI大模型应知应会100篇》第46篇:大模型推理优化技术:量化、剪枝与蒸馏
  • 基于 SAFM 超分辨率上采样模块的 YOLOv12 改进方法—模糊场景目标检测精度提升研究
  • 一、大模型原理:第一步分词Tokenization
  • MySQL数据操作全攻略:DML增删改与DQL高级查询实战指南
  • hadoop存储数据文件原理
  • 微服务设计约束
  • 介绍 PHP-FPM 和 Python WSGI
  • 【Bootstrap V4系列】学习入门教程之 组件-按钮(Buttons)
  • 宝塔docker拉取仓库失败
  • Nginx发布Vue(ElementPlus),与.NETCore对接(腾讯云)
  • list的迭代器详讲
  • Linux之基础开发工具(yum,vim,gcc,g++)
  • 基于 Dify + vLLM插件 + Qwen3 构建问答机器人Docker版