【网络编程】http协议

news2024/11/28 20:37:31

预备知识

什么是http协议

HTTP(Hypertext Transfer Protocol,超文本传输协议)是一个应用层的协议,用于在网络中传输超文本(如HTML文档)。HTTP协议建立在TCP/IP协议之上,是Web浏览器和Web服务器之间的主要通信协议。

URL介绍

URL(Uniform Resource Locator,统一资源定位符)是用于指定互联网上的资源地址的一种表示方法。它提供了访问互联网资源的路径和定位方式,使得人们可以通过浏览器或其他工具轻松访问这些资源。
URL的组成通常包括以下几个部分(用冒号分隔):
在这里插入图片描述
只有协议和域名(ip地址)是必须的,其余都是可选的
在这里插入图片描述
当提交或者获取的数据本身可能包含与url中特殊的字符冲突的字符,要求BS(Browser-Server)双方要进行编码和解码。将字符转为16进制,从右向左取4位,每两位做1为,前面加上%。
在这里插入图片描述

HTTP请求和响应

http request格式

在这里插入图片描述
在这里插入图片描述

http response格式

在这里插入图片描述

http的方法

在这里插入图片描述

get方法

GET 方法用于从指定的资源请求数据。它通常用于从服务器获取(或查询)某些信息。当使用 GET 方法时,请求的数据会附加到URL的查询部分(即URL的“?”后面的部分)

数据附加在URL中,因此长度有限制(浏览器和服务器都有URL长度的限制)。
GET 请求可以被缓存。
GET 请求可以保存在书签中。
GET 请求可以被浏览器收藏为搜索历史。
GET 请求通常用于从服务器获取数据,而不是发送数据到服务器。
GET 请求是幂等的,意味着多次相同的请求将返回相同的结果(除非资源本身发生变化)。
GET 请求的数据会暴露在URL中,因此不应包含敏感信息。

post方法

POST 方法用于向指定的资源提交数据,请求服务器进行处理(例如,提交表单或上传文件)。POST 请求将数据包含在请求体中,而不是附加到URL上。

请求的数据包含在请求体中,因此没有长度限制(但仍然受到服务器或客户端配置的限制)。
POST 请求不会被缓存。
POST 请求不会被保存在书签或搜索历史中。
POST 请求通常用于发送数据到服务器,而不是从服务器获取数据。
POST 请求不是幂等的,因为每次相同的请求都可能导致服务器上资源的状态发生变化。
POST 请求的数据不会暴露在URL中,因此适合包含敏感信息

表单

详见html教程
在这里插入图片描述
action表示把表单中的数据提交给谁
method表示表单以什么方式提交,一般是get或post

http状态码

在这里插入图片描述

临时重定向和永久重定向

1.临时重定向表示资源暂时被移动到了一个新的URL,但仍有可能返回原始URL。搜索引擎会继续抓取和索引原始URL,因为它们认为这是临时的变动。
常见的HTTP状态码为302(Found),意味着请求的资源现在临时从不同的URI响应请求。由于状态是临时的,客户端应当继续向原有地址发送以后的请求。
临时重定向的应用场景包括网站维护等需要暂时更改资源位置的情况。
2.永久重定向表示资源已经永久地移动到了一个新的URL。搜索引擎会更新它们的索引,将原始URL替换为新的URL。常见的HTTP状态码为301(Moved Permanently),意味着被请求的资源已永久移动到新位置,并且将来任何对此资源的引用都应该使用本响应返回的URI。永久重定向对于SEO(搜索引擎优化)非常重要,因为它可以保留原始页面的权重和排名。同时,当多个域名需要指向同一网站时,也可以通过301永久重定向实现。对于客户端(如浏览器)来说,一旦执行了永久重定向,以后再次访问原始URL时,浏览器会直接访问重定向后的URL,而无需再次进行重定向。

http常见报头

在这里插入图片描述

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

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

相关文章

数据结构之链表深度讲解

小伙伴们,大家好呀,上次听我讲完顺序表想必收获不少吧,嘿嘿,这篇文章你也一样可以学到很多,系好安全带,咱们要发车了。 因为有了上一次顺序表的基础,所以这次我们直接进入正题,温馨…

Meta最新研究: Flash Attention 为何是系统性能瓶颈?

I. 引言 随着机器学习趋向于更大和更复杂的模型,模型训练过程变得越来越计算和资源密集。生成式AI的出现进一步推动了模型开发的边界,大型语言模型(LLMs)通常在数百或数千个GPU上训练数月。以LLaMA2的70-B参数模型为例,需要1,720,320 GPU小时来训练。对于如此长的训练作业,训练…

2024-05-07 商业分析-赚钱之前怎么预估风险-记录

摘要: 2024-05-07 商业分析-赚钱之前怎么预估风险-记录 赚钱之前怎么预估风险 好,大家好,今天我们来讲的是叫什么赚钱之前怎么评估风险啊,这个问题啊提的很好啊,我们待会儿来讲啊。呃,首先呢今天这个主题呢来自于昨天…

腾讯云服务器之ssh远程连接登录

一、创建密钥绑定实例 创建密钥会自动下载一个私钥,把这个私钥复制到c盘 二、设置私钥权限 1、删除所有用户权限 2、添加当前用户权限 查看当前用户名 echo %USERNAME%三、ssh远程连接到服务器 ssh ubuntu175.xxx.xxx.112 -i C:\Crack\cs2.pem四、修改root密码 s…

2024年荆州中级工程师报名开始了吗?

2024年荆州中级工程师职称报名已经开始了 2024年荆州中级职称报名时间: (一)网上报名时间: 4月26日9时至5月10日16时。超过时间将不能操作。 (二)网上缴费时间: 4月26日9时至5月10日24时 网上…

太原理工大学Python数据分析原理与应用(课外考题:8~11章)

这部分大概只考10分,且大部分出在选择题,填空最多一两个 (仅供参考) 第十章 (理解概念为主,无需看推导过程) 第十一章

常用算法汇总

作者:指针不指南吗 专栏:算法篇 🐾算法思维逻辑🐾 文章目录 1.判断闰年2.计算从某天到某天的天数3.二分4. 前缀和5.差分6.图论6.1dfs6.2走迷宫 7.最短路7.1dijkstra7.2foly 8.并查集9.数论9.1gcd lcm9.2判断素数(质数)9.3分解质因…

TCP经典异常问题探讨与解决

作者:kernelxing TCP的经典异常问题无非就是丢包和连接中断,在这里我打算与各位聊一聊TCP的RST到底是什么?现网中的RST问题有哪些模样?我们如何去应对、解决?本文将从RST原理、排查手段、现网痛难点案例三个板块自上而…

AIGC技术带给我们什么?基于AIGC原理及其技术更迭的思考

AIGC技术带给我们什么?基于AIGC原理以及技术更迭的思考 前言 AI,这个词在如今人们的视野中出现频率几乎超过了所有一切其他的事物,更有意思的是,出现频率仅次于这个词的,几乎都会加上一个修饰亦或是前缀——AI&#…

【刷题篇】双指针(一)

文章目录 1、移动零2、复写零3、快乐数4、盛最多水的容器 1、移动零 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 请注意 ,必须在不复制数组的情况下原地对数组进行操作。 class Solution { pub…

【机器学习系统的构建】从模型开发的过程讲清楚K-Fold 交叉验证 (Cross-Validation)的原理和应用

0、前言 最近在学习集成学习的时候了解到了k折交叉验证,其实在之前学习吴恩达老师的课程中也学过交叉验证,但是当时也不是很明白。这次借着自己的疑问以及网上搜找资料,终于把交叉验证给弄明白了。 在弄清楚前,我有这样几个疑问…

Windows系统和unbtun系统连接usb 3.0海康可见MVS和红外艾睿相机

一.海康可见USB3.0工业面阵相机 海康usb相机需要去海康官网上下载对应系统的MVS客户端及SDK开发包 海康机器人-机器视觉-下载中心 选择Windows系统和unbtun(我是linux aarch64,所以选择了对应压缩包解压) Windows系统 1.双击安装包进入安装界面&…

第三节课,前端

一、参考链接; 总 知识星球 | 深度连接铁杆粉丝,运营高品质社群,知识变现的工具 分 2022-03-18 星球直播笔记-用户中心(下) 语雀 二、登录 2.1登录网址 2.2前端页面修改 2.1 页面修改 2.2 页脚的超链接 网址&am…

机器学习算法--朴素贝叶斯(Naive Bayes)

一、实验环境 1. python3.7 2. numpy > 1.16.4 3. sklearn > 0.23.1 二、朴素贝叶斯的介绍 朴素贝叶斯算法(Naive Bayes, NB) 是应用最为广泛的分类算法之一。它是基于贝叶斯定义和特征条件独立假设的分类器方法。NB模型所需估计的参数很少,对缺…

25考研英语长难句Day02

25考研英语长难句Day02 【a.词组】【b.断句】 如果你是你讲话对象中的一员,你就能了解你们大家共同的经历和问题,你也可以顺便评论一下食堂里难吃的食物或董事长臭名昭著的领带品味。 【a.词组】 单词解释addressv. 演说, 演讲;…

【进程终止】概念理解 | 三种情况 | 退出码

目录 什么是进程终止 进程退出的场景 退出码 0退出码 !0系统退出码 非0自定义退出码 进程的终止从三个方面去谈。清楚进程终止是在做什么?进程终止的3中情况?如何终止?注意进程终止不是进程暂停。 什么是进程终止 ❓进程…

Map集合的实现类~HashMap

存储结构:哈希表 键重复依据是hashCode和equals方法(键不能重复) 添加: 先创建Student类,那么往HashSet添加的就是Student对象作为键值,后面的作为值 删除: 判断: 遍历&#xff1a…

Android 系统启动流程源码分析

一、Init进程启动 是一个由内核启动的用户级进程。内核自行启动之后,就通过启动一个用户级程序init的方式,完成引导进程。 启动的代码init.c中的main函数执行过程:system\core\init.c中: 主要下面两个重要的过程: 1…

每日OJ题_贪心算法三⑤_力扣134. 加油站

目录 力扣134. 加油站 解析代码 力扣134. 加油站 134. 加油站 难度 中等 在一条环路上有 n 个加油站,其中第 i 个加油站有汽油 gas[i] 升。 你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i1 个加油站需要消耗汽油 cost[i] 升。你从其中的一…

基于51单片机的ADC0804的电压表设计(仿真+源码+设计资料)

目录 1、前言 2、资料内容 3、仿真图 4、程序 资料下载地址:基于51单片机的ADC0804的电压表设计(仿真源码设计资料) 1、前言 最近看网上有很少的ADC0804的设计了,都由0809代替,但是有个别因为成本原因和学校课…