HTTP交互导致ECONNABORTED的原因之一

背景:

本次记录的,是一次使用HTTP交互过程中遇到的问题,问题不大,就是给题目上这个报错补充一种可能的解决方案。

程序大致流程:

  1. 设备向服务器A请求信息

  2. 拿到回复记录下回复内容中的数据包下载地址等信息

  3. 使用下载信息的IP地址向服务器B请求新的数据包内容


现象

本次出现问题是在流程的第3步,下图是运行过程提示的log信息:

下图为错误码报出的位置,以及错误码代表的含义:

所以现象就是这么个现象,connect失败了,错误码提示ECONNABORTED。


分析:

先去网上搜了一下,介绍得都很清楚准确,关于客户端抛出ECONNABORTED这个错误码的内在逻辑。

内部逻辑解释得都没问题,各位前辈都说得很明白。不过具体到不同人遇到的问题,和表现出来的现象都不一样。比如我这次的报错,仔细对照log检查了代码逻辑,很容易就能发现原因。

向服务器请求http数据,端口应该用"80",这个都清楚。不过我这次请求过程中,代码处理上出了点问题,导致端口号用的是"0". 进而导致了这次的报错。


解决:

修正端口号为"80",connect就正常了,不再报错。

特此记录一下,帮助可能碰到同样问题的兄弟。

相关推荐
Rust研习社4 分钟前
使用 Tonic 构建高性能异步 gRPC 服务
开发语言·网络·后端·http·rust
思麟呀16 分钟前
Epoll的学习,在select和poll的基础上
网络·数据库·sql·学习·tcp/ip
小柯博客1 小时前
Amazon Kinesis Video Streams C WebRTC SDK 开发实战
c语言·开发语言·网络·stm32·嵌入式硬件·webrtc·yocto
半个西瓜.1 小时前
车联网安全:GPS定位测试.(动态欺骗)
网络·安全·网络安全·车载系统
独隅1 小时前
SSL协议深度解析:从历史演进到现代安全实践
网络协议·安全·ssl
iwS2o90XT1 小时前
WebSocket编程:Java实现实时双向通信应用
java·websocket·网络协议
byoass2 小时前
自动化任务系列之二:批量建目录树——Excel模板驱动千人项目初始化
运维·网络·安全·自动化·云计算
思麟呀2 小时前
在Select的基础上学习poll
linux·网络·学习·tcp/ip
郝学胜-神的一滴2 小时前
从底层看透Linux高性能服务器:epoll自定义封装与超时清理实战
linux·服务器·c++·网络协议·tcp/ip·unix
小夏子_riotous2 小时前
Docker学习路径——9、Docker 网络深度解析:从默认网络到自定义网络实战
linux·运维·网络·docker·容器·centos·云计算