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:\ \[2023/8/7 15:15:10:378\]\\400 Bad Request\\ \[2023/8/7 15:15:10:378\]\ \[2023/8/7 15:15:10:378\]\\400 Bad Request\\ \[2023/8/7 15:15:10:378\]\\nginx\ \[2023/8/7 15:15:10:378\]\ \[2023/8/7 15:15:10:378\]\ # 3、wireshark 数据包分析 ![](https://file.jishuzhan.net/article/1690255609787584514/995c75b7099b4f6bbbd8a2200f2b3be6.jpeg) 从上面数据可以看出mbedtls的流程已经完成,到了Application Data数据帧来,然后服务器主动断开了连接。可以推断该问题大概率会device端数据的异常导致的(**语义有误,当前请求无法被******[服务器](https://baike.baidu.com/item/%E6%9C%8D%E5%8A%A1%E5%99%A8/100571?fromModule=lemma_inlink "服务器")******理解**)。 # 4、调试 (1) 异常数据 ![](https://file.jishuzhan.net/article/1690255609787584514/8eeb70d0fe0340adb4b3830566861db0.png) (2) 正常数据 ![](https://file.jishuzhan.net/article/1690255609787584514/f4cf506d7c7546af9b07192e5132b146.png) 接下来重点就看程序读取MAC地址填写异常的代码段即可。

相关推荐
joker_zsl1 小时前
docker的安装和简单使用(ubuntu环境)
运维·docker·容器
Run1.1 小时前
深入解析 Linux 中动静态库的加载机制:从原理到实践
linux·运维·服务器
VI8664956I261 小时前
全链路自动化AIGC内容工厂:构建企业级智能内容生产系统
运维·自动化·aigc
码农hbk2 小时前
linux ptrace 图文详解(七) gdb、strace跟踪系统调用
linux·服务器
264玫瑰资源库3 小时前
斗鱼娱乐电玩平台源码搭建实录
运维·服务器·游戏·娱乐
hotlinhao3 小时前
ThinkPHP6模型中多组条件逻辑或Or查询的使用
linux·服务器·数据库
Jogging-Snail3 小时前
从零开始掌握Linux数据流:管道与重定向完全指南
linux·运维·管道·重定向·linux 数据流·管道原理
niuTaylor3 小时前
Linux驱动开发快速上手指南:从理论到实战
linux·运维·开发语言·驱动开发·c#
fxshy4 小时前
ai聊天流式响应,阻塞式和流式响应 nginx遇到的坑
运维·javascript·nginx
mit6.8244 小时前
[OS_8] 终端和 UNIX Shell | 会话和进程组 | sigaction | dash
运维·服务器