Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
http
post
Webclient
web client 在使用post方法上传文件,在读取文件过程中卡住了
发布于 2024-02-05 14:02:13 浏览:252
订阅该版
1:postman显示的访问最终效果 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240206/7837efd31e59f1b4ab71e9cb29b527ce.png.webp) 2: 实际卡住的代码位置 发现weblcient里面的一个传入文件读取的地方,会卡住。文件大小是7800,只读取4096的大小之后,就一直没有往下走。 1)不知道是不是由于他的这个接口bufer开太大了,改成256是否可行 2)卡住的位置,卡在251行,没有到255行 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240205/a67859b4fd4cc534a776de486616e70a.png) 3)控制台的输出信息 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240205/2e72098a21e24de8dd5dc85586df64c2.png.webp) 4)后来加了几个追踪的打印日志,不知道为什么又不卡住了,只是存在。 在 `ret = webclient_handle_response(session);` 该函数的返回值为-1 - 代码片段 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240205/ffce68993308fb70f17f205d15cd313c.png) - 控制台输出 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240205/fba9afd918a2b988a98ad60bb0ae1463.png) 5)单独手动输入的时候一个.txt的文件,内容为abcdefg1234567的字符串,倒是不会出现 卡住的情况,但是返回的是400的错误 - 看实际的HTTP的文件传输格式也是预期的格式二级制传输 Content-Type: application/octet-stream - 返回400的问题 webclient_handle_response ret[400] ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240205/45a68ddf635547abd4dde2fbc1cd06d0.png.webp) -后来有把name 改成upfile,就能够正常返回200 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240205/dc8ae682c8697966993aa80a01fddfee.png.webp) 6)换回了原来的那个alarm.log0,二进制的结构体文件。还是会出现卡住的情况。 有看了在这个函数发送的时候,就发送失败了。返回的-1 在1472行和1474行,卡了很久,最后bytes_write函数返回了-1 ![screenshot_image.png](https://oss-club.rt-thread.org/uploads/20240205/357880412889f2623829838b8d9a6404.png.webp) 7)看相应的文件,把相应读取到文件内容打印出来,打印出来的数据内容是空的。 但是我实际里面的文件内容还是有,只是不好通过cat 方式显示出来。 - 文件大小 ![screenshot_63289814c672250645d4fddc1614c71.png](https://oss-club.rt-thread.org/uploads/20240206/f84811e40178b147cfee61fbdcf344ed.png) - cat 方式显示 ![screenshot_253d7fe94f0b15684085737a74a3178.png](https://oss-club.rt-thread.org/uploads/20240206/2fd36a884515add8e7b500642acc2281.png) 有没有知道是什么原因的?感觉像是这个.log0命名不规范,他HTTP协议没有匹配到对应的文件类型。但是这个结构体的,是我本地自己使用。转码也是我本地自己转的。所以不需要明文进行传输
查看更多
2
个回答
默认排序
按发布时间排序
wuguifang
2024-02-06
调网络不抓包,调I2C等时序不上逻辑分析仪,就像电工不用万用表!多用整理的好的文字,比截图更省流量,还能在整理过程中思考
1:将读取到文件里面的内容,重新格式化输入到buf里面,调用 webclient 将数据发送出去,能够正常返回200了
famecc
2024-04-28
这家伙很懒,什么也没写!
请教下,测试用的post 文件的http服务器是自己搭建的吗?
撰写答案
登录
注册新账号
关注者
0
被浏览
252
关于作者
wuguifang
调网络不抓包,调I2C等时序不上逻辑分析仪,就像电工不用万用表!多用整理的好的文字,比截图更省流量,还能在整理过程中思考
提问
18
回答
15
被采纳
0
关注TA
发私信
相关问题
1
AT组件连接BC26并使用Webclient软件包GET方式请求失败
2
webclient sal_sock每次send 内存就多占几十字 咋排查
3
webclient使用疑惑 ,post上传数据无效,get下载数据
4
w5500通信不稳定。
5
webclient软件包get接口,等不到response header?
6
webclient使用的建議
7
基于官方 webclient 的 http client
8
stm32使用webclient+mbedtls实现get请求及post太慢
9
Webclient无法下载局域网内的文件
10
webclient的post file的sample,需开启哪个文件系统支持
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
机器人操作系统 (ROS2) 和 RT-Thread 通信
4
国产MCU移植系列教程汇总,欢迎查看!
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
【24嵌入式设计大赛】基于RT-Thread火星一号华为云平台储能监测管理系统
2
RVBacktrace RISC-V极简栈回溯组件
3
一文教你如何在VSCODE中搭建RT-Thread开发环境
4
分享第一次PR的经历
5
EtherCAT EOE移植及上手说明
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
ART-Pi
FinSH
USB
文件系统
DMA
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
ota在线升级
WIZnet_W5500
UART
flash
packages_软件包
cubemx
PWM
freemodbus
BSP
潘多拉开发板_Pandora
定时器
ADC
中断
flashDB
socket
Debug
GD32
编译报错
msh
keil_MDK
at_device
rt_mq_消息队列_msg_queue
ulog
C++_cpp
SFUD
本月问答贡献
出出啊
1512
个答案
341
次被采纳
小小李sunny
1437
个答案
289
次被采纳
张世争
774
个答案
167
次被采纳
crystal266
546
个答案
161
次被采纳
whj467467222
1222
个答案
148
次被采纳
本月文章贡献
出出啊
1
篇文章
2
次点赞
小小李sunny
1
篇文章
1
次点赞
张世争
1
篇文章
2
次点赞
crystal266
2
篇文章
1
次点赞
whj467467222
2
篇文章
2
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部