Http协议基础

news2024/10/6 10:38:16

Http 是什么?

Http 作为 WWW 的重要组成部分被提出 (World Wide Web)

而当时的 WWW 是为了帮助研究者更好的进行知识共享

基本理念:文档之间的相互关联形成超文本,最终连成相互参阅的 WWW

Http (Hyper Text Transfer Protocol) 用于定义文档之间如何跳转,即:文档传输协议

Http 是位于 TCP/IP 之上的应用层通信协议。

Http 世界中的 "重要角色"

域名解析服务器 (DNS - Domain Name Syetem)

DNS 是位于 TCP/IP 之上的应用层通信协议

DNS 提供域名到 IP 地址之间的域名解析服务

主机 IP 地址查询过程

域名 VS 网络地址

每一台网络中的主机都有一个地址 (唯一标识,即:  IP 地址)

为了方便记忆,可以通过域名访问网络上的目标主机

域名是字母与数字的组合,如: dt4sw.com

DNS 可通过域名查找 IP 地址,也可逆向从 IP 地址反查域名

初见 URI 和 URL

URI:统一资源标识符 (Uniform Resource Identifier)

  • 由某种规则定义的资源标识符
  • 通过字符串标识资源 (即:URI 的表现形式为字符串)

URL:统一资源定位符 (Uniform Resource Locater)

  • URL 常用于表示互联网中的资源 (即:URL 是 URI 的子集)
  • URL 强调定位,即通过某路径确切找到资源,确保可以访问到资源

深入理解 URI 和 URL

URL 是一种特殊的 URI,它是 URI 的一种应用形式

URI 不一定是 URL,而 URL 一定是 URI

URL 是绝对的,提供访问到确切路径的具体形式 (全网唯一)

URI 既有相对性又有绝对性

相对性:通过上下文条件与 URI 可确定具体资源

绝对性:直接通过 URI 自身的信息即可确定具体资源

URL 详解

Http 的协议简介

Http 以 TCP 为底座,通过 C/S 模型与服务器进行通信

Http 请求必然从客户端发出,服务器端响应请求后断开连接

工作模式:请求响应且不保存状态

Http 是基于文本的协议 (Http 协议细节具备可读性)

 

 

Http 响应状态

小结

WWW 最初由 Http,URL,HTML 三个重要部分组成

Http 是基于 TCP 的应用层文本协议

URL 是网络资源的 "绝对地址",指向某个主机上的文件资源

HTML 用于格式化 Http 响应消息中的消息体

Http 协议中的状态处理是服务器设计中的关键

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/115605.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

QUIC的优势与缺陷

被寄予厚望的下一代互联网传输协议,QUIC究竟有哪些优点呢? 总结如下: 多路复用:QUIC升华了HTTP/2中的多路复用技术,实现了基于互相独立的多流(多通道)数据传输,从根本上解决了TCP存在…

基于C语言学生信息教务管理系统编程设计

一.实现功能 1.从键盘添加学生信息 2.从文件添加学生信息 3.显示学生信息到屏幕 4.显示学生信息到文件 5.删除学生信息 6.插入学生信息 7.查找学生信息 8.成绩排名 二、相关代码 #include<stdio.h> #include<stdlib.h> //使用malloc函数以及exit函数 #include<…

力扣(LeetCode)1759. 统计同构子字符串的数目(C++)

题目描述 双指针数学 根据同构字符串的定义&#xff0c;还有示例&#xff0c;发现同构子字符串的数量&#xff0c;只和字母相同的区间有关。如abbcccaa&#xff0c;有 444 个影响答案的区间&#xff0c;直观切分为a bb ccc aa&#xff0c;用空格划分区间。遍历的任务就是维护这…

灵动岛前端Ui

一、前言 灵动岛&#xff08;Dynamic Island &#xff09;是什么&#xff1f; 灵动岛&#xff0c;是苹果公司iPhone 14 Pro系列 [2] 交互UI&#xff0c;让虚拟软件和硬件的交互变得更为流畅。当有来电、短信等通知时&#xff0c;灵动岛会变化它的形态&#xff0c;以便让用户能…

【大数据】M1 mac win docker安装kafka+mysql+canal

文章目录kafkadocker-compose创建kafka容器启动以后&#xff0c;访问容器&#xff0c;并且发送消息测试问题Exception in thread "main" kafka.zookeeper.ZooKeeperClientTimeoutException: Timed out waiting for connection while in state: CONNECTINGmysqldocker…

LAPS本地管理员密码之使用PowerShell查看和重置密码

目录 一、PowerShell策略设置 二、引入AdmPwd.PS模块 三、查看密码 四、强制重置密码 文章主要介绍在部署了LAPS后&#xff0c;怎么使用PowerShell查看和管理域内本地管理员密码。需要注意的是被操作的电脑需要加域&#xff0c;所有操作都在域内环境下进行。 LAPS介绍 LAP…

Spring Boot 知识总结

Spring Boot 知识总结 一、Spring Boot基础 1.1 什么是Spring Spring是一个开源框架&#xff0c;2003年兴起的一个Java轻量级开发框架&#xff0c;作者&#xff1a;Rod Johnson。 Spring是为了解决企业级应用开发的复杂性而创建的&#xff0c;简化开发。 Spring是如何简化…

LeetCode 每日一题——1759. 统计同构子字符串的数目

1.题目描述 1759. 统计同构子字符串的数目 难度中等43 给你一个字符串 s &#xff0c;返回 s 中 同构子字符串 的数目。由于答案可能很大&#xff0c;只需返回对 109 7 取余 后的结果。 同构字符串 的定义为&#xff1a;如果一个字符串中的所有字符都相同&#xff0c;那么…

Rancher RFO 正式 GA

Rancher RFO GA RFO 是 Rancher For openEuler 的缩写&#xff0c;旨在面向 openEuler 打造 Rancher 基础平台。其中最核心的工作是打造一款面向 openEuler 生态的 Kubernetes 发行版。它基于上游 RKE2 的技术栈&#xff0c;构建物采用 openEuler base image&#xff0c;致力于…

C语言及算法设计课程实验一:C程序的运行环境和运行C程序的方法

C语言及算法设计课程实验一&#xff1a;C程序的运行环境和运行C程序的方法一、实验目的二、实验内容2.1、输人并运行一个简单的正确的程序2.2、输人并编辑一个有错误的C程序2.3、输入并运行一个需要在运行时输入数据的程序2.4、运行一个自己编写的程序三、实验步骤3.1、输人并运…

Android OpenGL ES 学习(十一) –渲染YUV视频以及视频抖音特效

OpenGL 学习教程 Android OpenGL ES 学习(一) – 基本概念 Android OpenGL ES 学习(二) – 图形渲染管线和GLSL Android OpenGL ES 学习(三) – 绘制平面图形 Android OpenGL ES 学习(四) – 正交投影 Android OpenGL ES 学习(五) – 渐变色 Android OpenGL ES 学习(六) – 使用…

基于MWORKS.Sysplorer的电子控制器应用案例——永磁同步电机FOC算法建模

1 前言 MWORKS是面向数字工程的新一代科学计算与系统建模仿真平台&#xff0c;可提供机械、电子、液压、控制、热、信息等多领域统一建模仿真环境。经过同元持续攻关&#xff0c;全新推出的MWORKS.Sysplorer嵌入式代码生成器&#xff0c;现已支持面向电子控制器的产品级的嵌入…

循环神经网络的简洁实现

参考8.6. 循环神经网络的简洁实现 — 动手学深度学习 2.0.0 documentation 本节将展示如何使用深度学习框架的高级API提供的函数更有效地实现相同的语言模型。 我们仍然从读取时光机器数据集开始。 pip install mxnet1.7.0.post1 pip install d2l0.15.0 from mxnet import n…

ubuntu18.04下用Fiddler抓取curl库网络数据包总结

本人在ubuntu18.04下进行开发&#xff0c;需要使用http和服务端进行通信&#xff0c;为了确认自己发送给服务端和服务端返回数据字段&#xff0c;所以需要进行抓包分析参数。本文就说明一下如何在ubuntu18.04使用fidder对自己编写的应用程序进行http协议数据包抓取。 目录 1.…

无线网络渗透测试清单

©网络研究院 无线渗透测试积极检查 WiFi 网络中的信息安全措施的过程&#xff0c;并分析弱点、技术流程和关键无线漏洞。 我们应该关注的最重要的对策是威胁评估、数据盗窃检测、安全控制审计、风险预防和检测、信息系统管理和升级基础设施&#xff0c;并且应该准备一份…

13-14-15-RabbitMq工作模式深度剖析与Spring整合MQ以及RabbitMq高级特性

RabbitMQ消息传递流程 连接( Connection) 在RabbitMQ中&#xff0c;生产者和消费者与RabbitMQ的通信就是基于TCP连接的。不过呢我们知道TCP连接的创建和销毁在高并发场景下对于操作系统来说都是特别昂贵的开销&#xff0c;所以RabbitMQ又引入了信道的概念 信道&#xff08;Chan…

云原生之使用Docker部署轻量级web服务器lighthttpd

云原生之使用Docker部署轻量级web服务器lighthttpd一、Lighthttpd介绍二、检查系统版本三、检查docker状态四、下载lighthttpd镜像五、部署lighthttpd1.创建数据目录2.创建lighthttpd容器3.查看容器状态六、访问lighthttpd服务七、编辑index.html1.编辑index.html文件2.重新访问…

Hadoop大数据存算分离方案:计算层无缝对接存储系统

Hadoop的诞生改变了企业对数据的存储、处理和分析的过程&#xff0c;加速了大数据的发展。随着大数据系统建设的深入&#xff0c;企业的数据基础设施易出现计算资源浪费、存储性能低、管理成本过高等挑战。相比存算一体架构&#xff0c;存算分离架构具有性能与成本最优、兼具灵…

3D地图app

3D三维地图APP 发布时间&#xff1a;2018-07-19 版权&#xff1a; 3D地图依据高程数据等对地表进行渲染&#xff0c;实现地表的起伏&#xff0c;模拟出真实的三维场景&#xff0c;让你有如身临其境般的感觉。 &#xff08;注&#xff1a;Bigemap 3D地图是一个三维地图浏览功能…

项目沟通怎么才能不像在吵架?

项目沟通并非吵架&#xff0c;看起来却总是剑拔弩张。有效沟通才能真正解决问题&#xff0c;笔者给出了一些实用的建议&#xff0c;从对象到场景&#xff0c;再到方法与技巧&#xff0c;应该在沟通中有针对性地注意这些问题。 沟通是个老话题&#xff0c;在项目管理中有专门讲沟…