HTTP网络协议

1.HTTP

(1)概念:

Hyper Text Transfer Protocol,超文本传输协议规定了浏览器和服务器之间数据传输的规则。

(2)特点

  1. 基于TCP协议:面向连接,安全
  2. 基于请求-响应模型的:一次请求对应一次响应
  3. HTTP协议是无状态的协议:对于事务处理没有记忆能力。每次请求-响应都是独立的

        1)缺点:多次请求间不能共享数据。

        2)优点:速度快


2.请求

(1)含义

含义:客户端向服务器发送消息。

(2)组成

1)请求行(请求方法 URL 协议/协议版本号)

URL组成:
URL(网址)=协议://主机地址(IP地址或域名):端口号/路径?参数名=参数值&参数名=参数值

面试题1:介绍一下httphttps的区别?
http和https的区别
httphttps
共同点都是协议,都可以用来传输数据
不同点
  • 不加密,不安全
  • http端口号是80
  • 加密协议(公网使用)
  • https端口号是443
面试题2:请求方法(getpost的区别)
get和post的区别
getpost
共同点都可以向服务器发起请求,并且携带参数
不同点
  • 参数放在浏览器的地址栏,可以看到不安全
  • 参数长度有限制(浏览器的地址栏有长度限制)
  • 没有请求体
  • 参数放在请求体,需要抓包才可以看到,相对安全
  • 参数长度无限制,可以传递任意数量的参数

2)请求头

  • 键值对的形式展示
  • 客户端的属性信息

3)请求体(请求参数)

  • name=value
  • 如果有多个参数,&连接

3.响应

(1)含义

含义:服务器向客户端返回数据的过程。

(2)组成

1)响应行:协议/协议版本号 响应状态码 状态描述

面试题:响应状态码
面试题:响应状态码
2XX 成功
3XX重定向
4XX 客户端错误
5XX服务器错误

2)响应头: 服务器的属性信息

3)响应体: 服务器返回的结果(图片\HTML\JSON\txt等等)

                     JSON:{'name1':'value1'}

未完待续。。。

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

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

相关文章

mysql高级语句2存储过程

CREATE VIEW 视图,可以被当作是虚拟表或存储查询。 视图跟表格的不同是,表格中有实际储存数据记录,而视图是建立在表格之上的一个架构,它本身并不实际储存数据记录。 临时表在用户退出或同数据库的连接断开后就自动消失了&…

利用竞争智慧与大型语言模型:假新闻检测的新突破

Explainable Fake News Detection With Large Language Model via Defense Among Competing Wisdom 论文地址: Explainable Fake News Detection with Large Language Model via Defense Among Competing Wisdom | Proceedings of the ACM on Web Conference 2024https://dl.…

WebClient vs RestTemplate

WebClient vs RestTemplate:优缺点总结 RestTemplate 优点: 简单易用:RestTemplate 是同步的,使用方式简单,适合初学者。广泛使用:在很多Spring项目中已经广泛使用,有丰富的文档和社区支持。…

LeetCode 100342. 最小元素和最大元素的最小平均值

更多题解尽在 https://sugar.matrixlab.dev/algorithm 每日更新。 组队打卡,更多解法等你一起来参与哦! LeetCode 100342. 最小元素和最大元素的最小平均值,难度简单。 排序 解题思路:排序后取每次取数组首尾节点,求…

Docker常用命令与实战示例

docker 1. 安装2. 常用命令3. 存储4. 网络5. redis主从复制示例6. wordpress示例7. DockerFile8. 一键安装超多中间件(compose) 1. 安装 以centOS系统为例 # 移除旧版本docker sudo yum remove docker \docker-client \docker-client-latest \docker-c…

CTO的职责是什么?

看《架构思维》作者是这样讲的: CTO 到底是做什么的? 我当下的答案是:“CTO 就是一个从技术视角出发,为公司或者所在的部门做正确决策的 CEO。”怎么理解这句话呢?作为一个 CTO,其长期目标和决策优先级与…

论文笔记:Spatial-Temporal Interval Aware Sequential POI Recommendation

ICDE 2022 1 intro 1.1 背景 空间(Spatial)和时间(Temporal)信息是序列 POI 推荐中两个重要且相辅相成的因素。 空间因素(如地理距离间隔)可以在用户的历史轨迹呈现空间分簇现象时,细粒度刻画…

使用stat、fstat和lseek获取文件长度

使用stat、fstat和lseek获取文件长度 在Linux系统中,有多种方法可以获取文件的长度。本文将介绍三种常用的方法:使用stat、fstat和lseek函数。 1. 使用stat函数 stat函数用于获取文件的状态信息。它的原型如下: int stat(const char *pat…

ES插件elasticsearch-analysis-pinyin和analysis-icu的区别

插件elasticsearch-analysis-pinyin和analysis-icu的区别:Elasticsearch中的两个插件elasticsearch-analysis-pinyin和analysis-icu都有助于文本分析和处理,但它们的功能和应用场景有所不同。以下是这两个插件的主要区别和用途: 1、elasticsearch-analy…

2000年 - 2022年 Fama-French三因子模型数据+代码

Fama-French三因子模型是由著名经济学家尤金法玛(Eugene Fama)和肯尼斯法兰奇(Kenneth French)提出的,旨在改进资本资产定价模型(CAPM),更全面地解释资产收益率的变化。该模型认为&a…

【动态规划】简单多状态dp问题

一、经验总结 在分析dp问题的状态表示时,发现当前阶段的状态可以继续细分为多个状态,且多个状态之间可以通过某种方式进行转换,这就是动态规划的多状态问题。 多状态问题的关键有以下几点: 找出dp问题的多个状态表示&#xff1a…

YOLOv8主干网络使用FasterNet替换

1 提出问题 减少GFLOPs就一定能提高模型的运行速度吗?一般人认为这个是理由应当的。但是在FasterNet文章中,作者告诉我们:不一定! 延迟与浮点数运算的关系如下: Latency=FLOPsFLOPS FLOPs:模型浮点数运算 FLOPS:每秒浮点数运算 这个你们在实验中可以得到验证,MobileN…

开源与在线 M3U8 Downloader 项目介绍及使用指南

M3U8 是一种用于播放列表格式的文件类型,广泛应用于流媒体服务中,特别是 HLS(HTTP Live Streaming)协议。它包含了一系列的 TS(Transport Stream)视频片段地址,使得视频能够分段加载&#xff0c…

【深度学习驱动流体力学】湍流仿真到深度学习湍流预测

目录 一、湍流项目结构二、三个OpenFOAM湍流算例1. motorBike背景和目的文件结构和关键文件使用和应用湍流仿真深度学习湍流预测深度学习湍流预测的挑战和应用结合湍流仿真与深度学习2. pitzDaily背景和目的文件结构和关键文件使用和应用3. pitzDailyMapped背景和目的文件结构和…

说说 golang 中的接口和反射

1、接口 1.1 类型 Golang 中的接口是一组方法的签名,是实现多态和反射的基础。 type 接口名 interface {method1(参数列表) 返回值列表method2(参数列表) 返回值列表 }不同于 Java 语言,使用 implements 关键字显示的实现接口。Golang 接口的实现都是…

【服务器06】之【如何不开外网连接GitHub】

登录GitHub官网 GitHub: Let’s build from here GitHub 注册账号 登录账号 输入一个自定义名字,点击创建存储库就可以了 首先 如何在不开外网的条件下使用GitHub 第一步 下载安装Steam(Watt TooklKit) 区分一下如何查看哪个官网(没有百度广告就是…

实时导航 C语言

实现实时导航的一种方法是使用C语言和一些外部库,如SDL(Simple DirectMedia Layer)来处理图形界面和输入,以及OpenGL进行图形渲染。以下是一个简单的例子,展示了如何使用C语言和SDL库来创建一个简单的实时导航应用。 …

Package libcudnn8 is not installed.的问题

ubantu20.04,cuda11.2安装cuda, cudann . 安装CUDNN时,如果选择 Deb安装方法, 有三个安装包要安装,必须先安装runtime版本,再安装developer版本,不然就会出现以下问题: dpkg: depe…

如何在Android中实现多线程与线程池?

目录 一、Android介绍二、什么是多线程三、什么是线程池四、如何在Android中实现多线程与线程池 一、Android介绍 Android是一种基于Linux内核的开源操作系统,由Google公司领导开发。它最初于2007年发布,旨在为移动设备提供一种统一、可扩展的操作系统。…

UltraEditUEStudio软件安装包下载及安装教程

​根据软件大数据显示提供预定义的或使用者创建的编辑“环境”,能记住 UltraEdit 的所有可停靠窗口、工具栏等的状态。实际上我们可以这样讲HTML 工具栏,对常用的 HTML 功能作了预配置;文件加密/解密;多字节和集成的 IME。根据使用者情况表明Git Editor&…