HTTP连接之出现400 Bad Request分析
1、400简介
400是一种HTTP状态码,告诉客户端它发送了一条异常请求。400页面是当用户在打开网页时,返回给用户界面带有400提示符的页面。其含义是你访问的页面域名不存在或者请求错误。主要分为两种。
1、语义有误,当前请求无法被服务器理解。除非进行修改,否则客户端不应该重复提交这个请求。
2、请求参数有误。
400的主要有两种形式:
1、bad request意思是“错误的请求";
2、invalid hostname意思是"不存在的域名”。
2、log
[2023/8/7 15:15:10:378][D]content:<html>
[2023/8/7 15:15:10:378]<head><title>400 Bad Request</title></head>
[2023/8/7 15:15:10:378]<body bgcolor="white">
[2023/8/7 15:15:10:378]<center><h1>400 Bad Request</h1></center>
[2023/8/7 15:15:10:378]<hr><center>nginx</center>
[2023/8/7 15:15:10:378]</body>
[2023/8/7 15:15:10:378]</html>
3、wireshark 数据包分析
从上面数据可以看出mbedtls的流程已经完成,到了Application Data数据帧来,然后服务器主动断开了连接。可以推断该问题大概率会device端数据的异常导致的(语义有误,当前请求无法被服务器理解)。
4、调试
(1) 异常数据
(2) 正常数据
接下来重点就看程序读取MAC地址填写异常的代码段即可。
相关文章:

HTTP连接之出现400 Bad Request分析
1、400简介 400是一种HTTP状态码,告诉客户端它发送了一条异常请求。400页面是当用户在打开网页时,返回给用户界面带有400提示符的页面。其含义是你访问的页面域名不存在或者请求错误。主要分为两种。 1、语义有误,当前请求无法被服务器理解…...
后端开发, 接口幂等性是什么意思
在后端开发中,接口的幂等性是指同一个请求的多次执行所产生的效果与执行一次的效果相同。简而言之,对于同一个接口请求,无论发送多少次,其对资源的状态修改结果都是一致的。 幂等性在接口设计和实现中非常重要,特别是在涉及数据修改或资源状态变更的情况下。如果一个接口…...

k8s手动发布镜像的方法
kubectl edit deploy编辑对应的文件,并:wq!保存即可...

十二、ESP32控制步进电机
1. 运行效果 2. 步进电机 最大特点:能够控制旋转一定的角度 3. 步进电机原理...

利用openTCS实现车辆调度系统(六)openTCS订单的使用
运输订单 由类的实例表示,描述了由车辆执行的进程。 通常,此过程是货物从一个地点到另一个地点的实际运输。 然而,A也可以只描述车辆到目的地位置的运动以及要执行的可选车辆操作。TransportOrderTransportOrder 以下所有内容都是 openTCS …...

第一天 什么是CSRF ?
✅作者简介:大家好,我是Cisyam,热爱Java后端开发者,一个想要与大家共同进步的男人😉😉 🍎个人主页:Cisyam-Shark的博客 💞当前专栏: 每天一个知识点 ✨特色专…...

知识图谱推荐系统研究综述
基于协同过滤的推荐是当前应用最为广泛的推荐方法,但也存在着新用户或新项目的冷启动以及数据稀疏等问题。针对上述两种方法出现的问题,研究者进一步提出了混合推荐系统。混合推荐系统结合上述两种方法的优点,可以有效缓解其中的不足,增加推荐的准确性。但是,混合推荐系统…...

基于Centos7的Nginx源码安装
目录 1、准备安装环境 2、获取tar包: 3、解压创建软链接 4、创建用户和组 5、执行安装 6、创建服务脚本 7、开启nginx:编辑编辑 1、准备安装环境 yum insatall -y make gcc gcc-c pcre-devel #pcre-devel -- pcre库 #安装openssl-devel yum …...

Ubuntu 20.04 安装 Stable Diffusionn
步骤 1:安装 wget、git、Python3 和 Python3虚拟环境(如果已安装可忽略这步骤) sudo apt install wget git python3 python3-venv步骤 2:克隆 SD 项目到本地 git clone https://github.com/AUTOMATIC1111/stable-diffusion-webu…...
vue name命名错误 Do not use built-in or reserved HTML elements as component
描述: Do not use built-in or reserved HTML elements as component id: header 这里指的是components的名称命名不正确。 在项目中我使用的是header 作为组件名称,但是在前端html中这个是内置组件来的,名称已被占用不能再使用这些名称了。…...

知识付费系统开发:构建高效智能的付费内容平台
随着数字化时代的来临,知识付费正迅速崭露头角,为知识创作者和求知者带来了全新的商机。在这个背景下,开发一款高效智能的知识付费系统成为了一项重要的任务。本文将深入探讨如何基于Python编程语言和相关技术构建一个智能的知识付费内容平台…...
数据结构----结构--线性结构--递归
数据结构----结构–线性结构–递归 1.递归的概念 递归:将一个问题拆解成解决方案完全相同的子问题,并且有一个明确的终点 看如下递归代码理解一下递归 void fun(int n){if(n4){printf("%d",n);return;}fun(n1);printf("%d",n); …...
在Windows批处理程序中实现延时功能
方法1:使用PowerShell echo off:: 使用 PowerShell 的 Start-Sleep 命令来实现精确延时 powershell -command "Start-Sleep -Milliseconds 3000"echo Delay complete. 不过,通常Win7专业版和旗舰版中都会默认安装了PowerShell,但是标准版和家…...

Java基础入门篇——Java变量类型的转换和运算符(七)
目录 一、变量类型 1.1自动类型转换(隐式转换) 1.2 强制类型转换(显式转换) 1.3类型转换的其他情况 二、运算符 2.1算术运算符 2.2比较运算符 2.3逻辑运算符 2.4位运算符 三、总结 在Java中,变量类型的转换…...

20230807通过ffmpeg将DTS编码的AUDIO音频转换为AAC编码
20230807通过ffmpeg将DTS编码的AUDIO音频转换为AAC编码 2023/8/7 20:04 ffmpeg dts 转AAC 缘起:由于网上找的电影没有中文字幕,有内置的英文字幕,但是还是通过剪映/RP2023识别一份英文字幕备用! I:\Downloads\2005[红眼航班]Red E…...

一生一芯1——windows与Ubuntu双系统安装
UltraISO下载 下载链接:https://pan.baidu.com/s/18ukDs6yL64qU6thYyZEo-Q?pwdo8he 提取码:o8he 一路傻瓜安装,安装后点击继续试用 Ubuntu系统下载 这里我使用的是官网的22.04版本,由于大于4G,无法上传至百度网盘…...
Linux下的CGI服务器
一、概述 使用进程池,半同步/半异步并发模式。 同步进程:工作子进程负责进行具体的连接以及具体的I/O,顺序执行 异步进程:主进程监听连接事件,将连接任务分发给子线程 二、设计逻辑 1.设计进程池的创建逻辑 2.父…...
后端开发3.Fastdfs的搭建
使用Docker安装 拉取镜像 docker pull registry.cn-beijing.aliyuncs.com/tianzuo/fastdfs 启动容器(修改ip)【fastdfs/自启动】(22122/23000/8888) docker run -d --restart=always --privileged=true --net=host --name=fastdfs -e IP=你的ip地址 -e WEB_PORT=8888 -v …...

目标检测与跟踪 (3)- TensorRTYOLO V8性能优化与部署测试
系列文章目录 目标检测与跟踪 (1)- 机器人视觉与YOLO V8_Techblog of HaoWANG的博客-CSDN博客 目标检测与跟踪 (2)- YOLO V8配置与测试_Techblog of HaoWANG的博客-CSDN博客 目录 系列文章目录 前言 YOLO v8 TensorRT 一、…...

SAS-数据集SQL垂直(纵向)合并
一、SQL垂直合并的基本语法 一个selectt对应一个表,select之间用set-operator连接,set-operator包括:except(期望)、intersect(相交)、union(合并),outer un…...

C++实现分布式网络通信框架RPC(3)--rpc调用端
目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中,我们已经大致实现了rpc服务端的各项功能代…...
基于大模型的 UI 自动化系统
基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...
ubuntu搭建nfs服务centos挂载访问
在Ubuntu上设置NFS服务器 在Ubuntu上,你可以使用apt包管理器来安装NFS服务器。打开终端并运行: sudo apt update sudo apt install nfs-kernel-server创建共享目录 创建一个目录用于共享,例如/shared: sudo mkdir /shared sud…...

通过Wrangler CLI在worker中创建数据库和表
官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...

PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建
制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...
Robots.txt 文件
什么是robots.txt? robots.txt 是一个位于网站根目录下的文本文件(如:https://example.com/robots.txt),它用于指导网络爬虫(如搜索引擎的蜘蛛程序)如何抓取该网站的内容。这个文件遵循 Robots…...

【论文阅读28】-CNN-BiLSTM-Attention-(2024)
本文把滑坡位移序列拆开、筛优质因子,再用 CNN-BiLSTM-Attention 来动态预测每个子序列,最后重构出总位移,预测效果超越传统模型。 文章目录 1 引言2 方法2.1 位移时间序列加性模型2.2 变分模态分解 (VMD) 具体步骤2.3.1 样本熵(S…...
大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计
随着大语言模型(LLM)参数规模的增长,推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长,而KV缓存的内存消耗可能高达数十GB(例如Llama2-7B处理100K token时需50GB内存&a…...

算法笔记2
1.字符串拼接最好用StringBuilder,不用String 2.创建List<>类型的数组并创建内存 List arr[] new ArrayList[26]; Arrays.setAll(arr, i -> new ArrayList<>()); 3.去掉首尾空格...

算法岗面试经验分享-大模型篇
文章目录 A 基础语言模型A.1 TransformerA.2 Bert B 大语言模型结构B.1 GPTB.2 LLamaB.3 ChatGLMB.4 Qwen C 大语言模型微调C.1 Fine-tuningC.2 Adapter-tuningC.3 Prefix-tuningC.4 P-tuningC.5 LoRA A 基础语言模型 A.1 Transformer (1)资源 论文&a…...