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

网络协议与响应码

http:超文本(不止文本)传输协议,底层是tcp/ip

        get,post,put,delete

        GET把参数包含在 URL 中, POST 通过 request body 传递参数

        请求都是tcp链接,HTTP规定,当执行GET请求的时候,要给汽车贴上GET的标签(设置method为GET),而且要求把传送的数据放在车顶上(url中)以方便记录。如果是POST请求,就要在车上贴上POST的标签,并把货物放在车厢里。当然,你也可以在GET的时候往车厢内偷偷藏点货物,但是这是很不光彩;也可以在POST的时候在车顶上也放一些数据,让人觉得傻乎乎的。HTTP只是个行为准则,而TCP才是GET和POST怎么实现的基本。

        运输公司。不同的浏览器 (发起http请求)和服务器(接受http请求)就是不同的运输公司。虽然理 论上,你可以在车顶上无限的堆货物(url中无限加参数)。但是运输公司 可不傻,装货和卸货也是有很大成本的,他们会限制单次运输量来控制风 险,数据量太大对浏览器和服务器都是很大负担。业界不成文的规定是, (大多数)浏览器通常都会限制url长度在2K个字节,而(大多数)服务器 最多处理64K大小的url。超过的部分,恕不处理。如果你用GET服务,在 requestbody偷偷藏了数据,不同服务器的处理方式也是不同的,有些服务 器会帮你卸货,读出数据,有些服务器直接忽略,所以,虽然GET可以带 request body,也不能保证一定能被接收到哦。

        GET和 POST 还有一个重大区别,简单的说: GET产生一个 TCP 数据包; POST 产生两个 TCP 数据包。 长的说: 对于GET 方式的请求,浏览器会把 http header data 一并发送出去,服务器
响应 200 (返回数据); 而对于POST ,浏览器先发送 header ,服务器响应 100 continue ,浏览器再 发送data ,服务器响应 200 ok (返回数据)。 也就是说,GET 只需要汽车跑一趟就把货送到了,而 POST 得跑两趟,第一 趟,先去和服务器打个招呼“ 嗨,我等下要送一批货来,你们打开门迎接 我” ,然后再回头把货送过去。 因为POST 需要两步,时间上消耗的要多一点,看起来 GET POST 更有效。
        因此Yahoo 团队有推荐用 GET 替换 POST 来优化网站性能。但这是一个坑!跳
入需谨慎。为什么?
        1. GET与 POST 都有自己的语义,不能随便混用。
        2. 据研究,在网络环境好的情况下,发一次包的时间和发两次包的时间差 别基本可以无视。而在网络环境差的情况下,两次包的TCP 在验证数据包完整性上,有非常大的优点。
        3. 并不是所有浏览器都会在 POST 中发送两次包, Firefox 就只发送一次。

https:就是http的封装,加上了ssl证书验证,安全版

dns:域名服务器,先在浏览器找缓存,操作系统找(要配置,否则不会缓存),本地域名服务器找,上级一层层往上找

tcp/ip:应用层,运输层,网络层,数据链路层,物理层

osi:应用层,表示层,会话层,运输层,网络层,数据链路层,物理层

响应码;

        200成功

        302重定向

        404路径错误/资源不存在

        500服务器内部错误

相关文章:

网络协议与响应码

http:超文本(不止文本)传输协议,底层是tcp/ip get,post,put,delete GET把参数包含在 URL 中, POST 通过 request body 传递参数 请求都是tcp链接,HTTP规定,当…...

彻底删除VsCode配置和安装过的插件与缓存

前言 当你准备对 Visual Studio Code(VSCode)进行重新安装时,可能遇到一个常见问题:重新安装后,新的安装似乎仍然保留了旧的配置信息,这可能会导致一些麻烦。这种情况通常是由于卸载不彻底所致&#xff0c…...

【XILINX】ISE chipscope出现错误 Can‘t load jre bin client jvm.dll

记录一个ISE软件使用过程中遇到的问题及解决方案。 问题 ISE chipscope出现错误 Cant load jre bin client jvm.dll C:\Xilinx\14.7\ISE_DS\ISE\bin\nt C:\Xilinx\14.7\ISE_DS\.xinstall\bin\nt C:\Xilinx\14.7\ISE_DS\.xinstall\bin\nt64 C:\Xilinx\14.7\ISE_DS\ISE\bin\nt6…...

并发编程(已整理,已废弃)

这一块知识,那真是有的啃了。 直接先看速成基础,再直接吃掉高频考点。 每个小知识点,直接看短视频,浅浅了解,在写下来就是自己的资料。 # 基础 一个进程有多个线程,多个线程共享进程的堆和方法区&#xf…...

第一篇:MongoDB的安装、启动、关闭、链接shell

目录 简介 安装 安装遇到的问题 查看brew 当前使用的源: 更换brew 源。更换成清华大学镜像源 版本查看 MongoDB 数据目录与日志目录 启动方式一: 启动MongoDB 验证MongoDB 是否正常运行 停止或重新启动 停止MongoDB 服务 重新启动MongoDB服…...

Python爬虫之重放攻击详解

更多资料获取 📚 个人网站:ipengtao.com 重放攻击是一种网络攻击方式,攻击者通过截获合法用户的请求,并将其重新发送,以模拟合法用户的行为。在Python爬虫领域,了解重放攻击的原理和防范方法至关重要。本文…...

构建一个语音转文字的WebApi服务

构建一个语音转文字的WebApi服务 简介 由于业务需要,我们需要提供一个语音输入功能,以便更方便用户的使用,所以我们需要提供语音转文本的功能,下面我们将讲解使用Whisper将语音转换文本,并且封装成WebApi提供web服务…...

在开发软件KEIL MDK和IAR开发工程里面打印行号、文件名、函数名、时间

最近应用固件没有时间记录,分别请那个是最新的(在没有版本区别的情况下),有个办法记录编译时间即可,记录笔记以便查看 在软件工程里面直接用宏 __FILE __ 当前程序文件名的字符串 __FUNCTION __ 当前函数的名字字符串 …...

springboot(ssm健身器材用品网 健身用品商城Java(codeLW)

springboot(ssm必录德健身器材用品网 健身用品商城Java(code&LW) 开发语言:Java 框架:ssm/springboot vue JDK版本:JDK1.8(或11) 服务器:tomcat 数据库:mysql 5.7(或8.0&am…...

idea git合并推送分支

远端代码合并到当前分支 1.本地切换到当前分支 2.远端目标分支右键合并到当前分支(使用合并拉入) 本地当前分支推送合并到远端分支 1.切换到远端本地分支 2.合并本地其他分支(想要推送的分支)到当前分支 3.推送分支 注意:这里的合并是:将XXX合并到XXX中 …...

AntDesignBlazor示例——创建列表页

本示例是AntDesign Blazor的入门示例,在学习的同时分享出来,以供新手参考。 示例代码仓库:https://gitee.com/known/AntDesignDemo 1. 学习目标 使用Table组件创建列表页面使用DisplayName特性显示中文表头使用模板和Tag组件显示高温数据使…...

微信小程序模板选择指南:如何找到靠谱的平台?

随着移动互联网的快速发展,越来越多的企业和商家都在微信小程序上开展业务。而他们也希望可以通过微信小程序模板快速搭建小程序,那么如何才能找到一个靠谱的微信小程序模板平台呢?下面给大家简单讲解一下。 首先要知道的是,微信小…...

es常用查询编辑

查询指定id信息 GET /index_name/_doc/1074266245查询指定信息并降序 GET /index_name/_search {"query": {"term": {"deviceId": {"value": "1074266245"}}}, "sort": [{"timestamp": {"order&qu…...

记录 | linux静态库和动态库的理解

hello.cpp&#xff1a; #include <cstdio>void hello() {printf("Hello, world!\n"); }main.cpp&#xff1a; #include <cstdio>void hello();int main() {hello();return 0; }静态库编译配置&#xff1a; cmake_minimum_required(VERSION 3.12) proj…...

ParBFT: Faster Asynchronous BFT Consensus with a Parallel Optimistic Path

目录 笔记后续的研究方向摘要引言 ParBFT: Faster Asynchronous BFT Consensus with a Parallel Optimistic Path CCS 2023 笔记 后续的研究方向 摘要 为了减少异步拜占庭容错&#xff08;BFT&#xff09;共识的延迟和通信开销&#xff0c;通常会添加一条乐观的路径&#xf…...

java小工具util系列3:JSON转实体类对象工具

文章目录 准备工作1.JSONObject获取所有的key2.集合中实体对象转换 list中Enrey转Dto3.字符串转List<BusyTimeIndicatorAlarmThreshold>4.json字符串转JSONObject5.list根据ids数组过滤list6.json字符串转JavaBean对象7.json对象转javabean8.jsonObject转map9.List\<U…...

MySQL:找回root密码

一、情景描述 我们在日常学习中&#xff0c;经常会忘记自己的虚拟机中MySQL的root密码。 这个时候&#xff0c;我们要想办法重置root密码&#xff0c;从而&#xff0c;解决root登陆问题。 二、解决办法 1、修改my.cnf配置文件并重启MySQL 通过修改配置文件&#xff0c;来跳…...

计算机网络扫盲(1)——因特网

一、概述 因特网是一个世界范围的计算机网络&#xff0c;即它是一个互联了遍及全世界数十亿计算设备的网络。大家对此应该并不陌生&#xff0c;我们身边有着不计其数的计算机设备被接入了因特网&#xff0c;如今计算机网络这个术语似乎已经有点过时了&#xff0c;用因特网的术语…...

C语言 if语句有无(;)分号问题

在C语言中&#xff0c;if语句后面不带分号&#xff08;;&#xff09;的情况有两种主要形式&#xff1a; 1. 带有大括号的代码块&#xff1a;如果if语句后面跟随一个由大括号&#xff08;{}&#xff09;包围的代码块&#xff0c;那么这个代码块中的语句只有在if条件为真时才会执…...

Python-列表详解(列表的创建、用法、遍历、注意事项、特点等)

本文有以下内容&#xff1a; 列表的创建 列表的下标索引注意事项 列表的访问 列表的增加元素 列表的删除元素 列表的任意删除元素 列表的查找元素 列表的查找元素位置 列表的插入任意位置 列表的遍历 列表的拼接方式 列表的切片操作以及注意事项 列表类似于其他语言的数组 列…...

从零到一:用MMDetection在Ubuntu 20.04上搭建Faster R-CNN模型(含完整配置与避坑指南)

从零到一&#xff1a;Ubuntu 20.04下MMDetection与Faster R-CNN实战全解析 当目标检测技术遇上PyTorch生态&#xff0c;MMDetection框架正在成为工业界和学术界的新宠。本文将带您完成从裸机到完整训练Faster R-CNN模型的实战旅程&#xff0c;特别针对Ubuntu 20.04系统和NVIDIA…...

基于大语言模型的网页自动化智能体:Elsa OpenClaw 实战指南

1. 项目概述与核心价值 最近在折腾一些自动化流程&#xff0c;发现很多重复性的网页操作&#xff0c;比如数据抓取、表单填写、状态监控&#xff0c;手动来做不仅耗时&#xff0c;还容易出错。于是我开始寻找一个能真正理解网页结构、像人一样操作浏览器的工具。市面上有不少自…...

[具身智能-679]:ROS2功能包 - 命令行与系统工具概述与使用示例

这是 ROS2 开发每天必用 的工具&#xff0c;全部通过终端命令操作&#xff0c;用于调试、查看、控制、记录整个 ROS2 系统。我按最常用顺序给你整理&#xff0c;每条命令都能直接复制运行。一、核心工具组&#xff1a;ros2cli所有命令都以 ros2 开头&#xff0c;是 ROS2 的总控…...

Specky:规范驱动开发平台,从AI氛围编程到确定性工程实践

1. Specky&#xff1a;一个重新定义AI辅助开发的确定性工程平台如果你和我一样&#xff0c;在过去几年里深度使用过GitHub Copilot、Claude Code这类AI编程助手&#xff0c;你肯定经历过那种又爱又恨的矛盾感。爱的是&#xff0c;它们确实能快速生成代码片段&#xff0c;把我们…...

后端开发必看:设计高并发系统时,如何估算你的RTT和时延带宽积?

高并发系统设计实战&#xff1a;从RTT到时延带宽积的性能优化指南 在分布式系统的世界里&#xff0c;网络性能指标往往成为制约整体吞吐量的隐形瓶颈。我曾亲眼见证过一个日活百万的社交平台&#xff0c;因为微服务间调用的RTT估算偏差&#xff0c;导致高峰期请求堆积如山的惨状…...

用微信小程序点灯!STC89C51+ESP8266物联网入门实战(附完整源码)

用微信小程序点灯&#xff01;STC89C51ESP8266物联网入门实战&#xff08;附完整源码&#xff09; 当你第一次看到手机上的按钮能控制真实世界的灯泡时&#xff0c;那种"魔法成真"的震撼感&#xff0c;正是物联网的魅力所在。本文将带你用不到百元的硬件成本&#xf…...

基于Python的Discord机器人开发:从自动化管理到插件化架构实战

1. 项目概述&#xff1a;一个为Discord社区量身打造的智能助手 如果你在运营一个Discord服务器&#xff0c;无论是游戏公会、技术社区还是兴趣小组&#xff0c;肯定遇到过这样的场景&#xff1a;新成员加入后&#xff0c;需要手动发送欢迎消息、引导他们阅读规则&#xff1b;成…...

从源码细节看muduo为何比libevent2快70%:一次4096字节读取限制引发的性能思考

从缓冲区设计揭秘高性能网络库的优化哲学 在构建高并发服务器时&#xff0c;网络库的性能差异往往源于看似微小的设计决策。当两个知名网络库在相同硬件条件下出现70%的吞吐量差距时&#xff0c;这个数字背后隐藏的是对系统调用、内存管理和数据流控制的深刻理解差异。本文将从…...

保姆级教程:用树莓派+罗技C310搭建简易监控(附fswebcam完整参数表)

树莓派罗技C310搭建智能监控系统的完整实践指南 在智能家居和远程办公日益普及的今天&#xff0c;搭建一个低成本、高灵活性的监控系统已经成为许多技术爱好者的需求。本文将带你从零开始&#xff0c;利用树莓派和罗技C310 USB摄像头构建一个功能完善的监控解决方案。不同于市面…...

DeepSeek API Gateway安全防护体系(零信任网关落地指南)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;DeepSeek API Gateway安全防护体系&#xff08;零信任网关落地指南&#xff09; DeepSeek API Gateway 作为面向大模型服务的统一入口&#xff0c;其安全架构严格遵循零信任原则——默认不信任任何网络…...