Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sockets 无法获取整个http消息_Sockets_Http_Curl - Fatal编程技术网

Sockets 无法获取整个http消息

Sockets 无法获取整个http消息,sockets,http,curl,Sockets,Http,Curl,我正在使用curl向我的服务器发送POST-HTTP消息。在服务器端,我打开一个套接字并使用以下代码读取数据 recv(socket_Fd, (void *)ucBuffer, (size_t)((sizeof(ucBuffer) - 1)), NULL); 我可以得到帖子的标题,但是在邮件正文中我只得到一行,其余的都没有了。 我在服务器端接收的数据 POST /info HTTP/1.1 User-Agent: curl/7.22.0 (i686-pc-linux-gnu) libcur

我正在使用curl向我的服务器发送POST-HTTP消息。在服务器端,我打开一个套接字并使用以下代码读取数据

recv(socket_Fd, (void *)ucBuffer, (size_t)((sizeof(ucBuffer) - 1)), NULL);
我可以得到帖子的标题,但是在邮件正文中我只得到一行,其余的都没有了。 我在服务器端接收的数据

 POST /info HTTP/1.1
 User-Agent: curl/7.22.0 (i686-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1    zlib/1.2.3.4 libidn/1.23 librtmp/2.3
 Host: 192.168.0.57:10000
 Accept: */*
 Content-Length: 356
 Content-Type: application/x-www-form-urlencoded

 Bhupesh Bhargava
在消息头中,它显示了正确的内容长度,但缺少消息正文。知道我哪里做错了吗。 我正在使用的curl命令

curl --data-binary @/home/bhupesh/data_save2 http://192.168.0.57:10000/info

curl命令似乎是正确的,如果我们继续,下面应该是正确的

数据的发布方式与--Data ascii类似,只是 换行符会被保留,转换也不会完成


因此,这就给我们留下了一个事实,即您的服务器实现中应该存在一个问题。不太确定您是如何在服务器上获取接收到的内容的,但是您应该小心自己对接收到的内容进行排序。这就是一个例子。

到目前为止,我得到的唯一有效解决方案是
curl--data binary“$(cat/home/bhupesh/data_save2)”http://192.168.0.57:10000/info 
但我还是不清楚