硬汉嵌入式论坛

 找回密码
 立即注册
查看: 4232|回复: 2
收起左侧

[LwIP] lwip netconn编程问题

[复制链接]

1

主题

6

回帖

9

积分

新手上路

积分
9
发表于 2021-4-9 14:06:19 | 显示全部楼层 |阅读模式
本帖最后由 技术萌新 于 2021-4-12 09:32 编辑

最近在做一个HTTP Server,使用NETCONN编程接口来处理浏览器的请求,浏览器通过POST发送一个100k的文件到lwip这里,问题是为什么通过netbuf或者pbuf始终只能获取1460字节的数据?通过pbug->next为空,这样就只能拿到浏览器发送过来的HTTP 请求头信息,POST包含的数据部分就看不到。不知道哪里出了问题
这是设置监听浏览器发送请求



这里是处理浏览器发来的数据,只能看到一帧数据:


------------------------------------------------------------------------------------------------------
重新写了个测试函数:
static void http_tcp_thread(void *arg)
{
    struct netconn *conn, *newconn;
    err_t err, accept_err;
    struct netbuf *inbuf;
    void *data;
    uint16_t len;
   
    conn = netconn_new(NETCONN_TCP);
    if(conn != NULL)
    {
        err = netconn_bind(conn, IP_ADDR_ANY, 80);
        if(err == ERR_OK)
        {
            netconn_listen(conn);
            while(1)
            {
                accept_err = netconn_accept(conn, &newconn);
                if(accept_err == ERR_OK)
                {
                    while((err = netconn_recv(newconn, &inbuf)) == ERR_OK)
                    {
                        do
                        {
                            netbuf_data(inbuf, &data, &len);
                            printf("%s",data);
                        }
                        while(netbuf_next(inbuf) >= 0);
                        netbuf_delete(inbuf);
                    }
                    netconn_close(newconn);
                    netconn_delete(newconn);
                }
            }
        }
    }
}
用wairshark抓包看了下,感觉是lwip没有配置好,接收性能有问题!
Snipaste_2021-04-12_09-31-35.png


回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106738
QQ
发表于 2021-4-10 08:39:31 | 显示全部楼层
帮顶。
回复

使用道具 举报

1

主题

6

回帖

9

积分

新手上路

积分
9
 楼主| 发表于 2021-4-12 09:33:33 | 显示全部楼层

感谢硬汉哥~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-3 09:56 , Processed in 0.290245 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表