社区
Java SE
帖子详情
HTTP服务器的模拟程序:怎么判断客户机传送过来的数据已经完毕啊??
abcdhy
2004-08-15 12:50:19
哪位大侠写过HTTP服务器的模拟程序??
怎么判断客户机传送过来的数据已经完毕啊??
谢谢!!
用一个 while 循环读取, 如果没有数据 程序就会在 read() 函数处停止运行,必须要在 循环内部 判断已经读取完毕,及时跳出死循环 .
比如做一个最简单的服务器, 把 IE 发过来的所有信息回发给 IE ,我首先要接收了所有的信息,才能发送啊? 我怎么判断接收的信息的完整性啊,又什么时候停止接收啊?
...全文
275
5
打赏
收藏
HTTP服务器的模拟程序:怎么判断客户机传送过来的数据已经完毕啊??
哪位大侠写过HTTP服务器的模拟程序?? 怎么判断客户机传送过来的数据已经完毕啊?? 谢谢!! 用一个 while 循环读取, 如果没有数据 程序就会在 read() 函数处停止运行,必须要在 循环内部 判断已经读取完毕,及时跳出死循环 . 比如做一个最简单的服务器, 把 IE 发过来的所有信息回发给 IE ,我首先要接收了所有的信息,才能发送啊? 我怎么判断接收的信息的完整性啊,又什么时候停止接收啊?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
abcdhy
2004-08-16
打赏
举报
回复
呵呵,如果不知道编码,我在服务器怎么才能识别客户端发过来的信息呢??
各位有什么好的方法码??
gameboy999
2004-08-16
打赏
举报
回复
就只有判断CONTENT_LENGTH
dreamno
2004-08-16
打赏
举报
回复
效率不长
zhang21cnboy
2004-08-16
打赏
举报
回复
你不可能知道客户端用什么编码。因为http协议没有规定这个。至于读取数据死循环的问题,你给socket设置超时。就可以解决这个问题。
abcdhy
2004-08-16
打赏
举报
回复
先谢谢 ber() 的鼎力帮助!!
ber() 你说的这个方法,我也知道,但这其中有一个问题!
就是 IIS 也有这个BUG!
正常时 content_length:xxx 后是表示用户数据的长度,但如果客户端,故意修改了这个值(比如改得很大),再发给服务器,就会导致服务器没数据可读,一直阻塞在那里.
先不说这个问题了??还有一个重要的问题:
我接收到了用户输入的数据,我怎么知道客户端是使用的什么编码发送的呢??
是不是在某个位置有记录的??
谢谢!!
超文本
传送
协议(
HTTP
)
本文详述了超文本
传送
协议
HTTP
的基本概念、特点及其在网络中的应用,包括客户/
服务器
模式、简单快速的特点、灵活的
数据
传输、无连接与无状态的特性。此外,文章还探讨了
HTTP
的缓存机制、协议交互过程以及对
HTTP
进行网络攻击的方法,如SYNFlood攻击和利用ContentLength限制导致的拒绝服务攻击。
计算机网络之实验四---WEB
服务器
配置与
HTTP
分析
本文档详述了一项实验,旨在理解
HTTP
工作过程、报文结构及访问Web资源的操作。实验中,通过配置华为eNSP模拟软件、Wireshark,搭建包含PC、
客户机
和
服务器
的网络拓扑,模拟
HTTP
通信并分析
HTTP
请求和响应报文。实验步骤包括设备和
服务器
的配置启动、
数据
抓包以及报文分析。实验结果展示了
HTTP
请求和响应报文的关键信息。
WEB
服务器
配置与
HTTP
分析
本文详细描述了一个实验,旨在理解
HTTP
工作过程和
HTTP
报文结构,通过Wireshark抓取Client-1访问WEB
服务器
的通信,展示网络配置、
服务器
启动及
HTTP
通信的全过程。
超文本
传送
协议
HTTP
本文介绍了超文本
传送
协议(
HTTP
)的基本概念及其工作原理。涵盖了
HTTP
的主要特点,如简单快速、灵活性高、无连接和无状态特性。同时,文章还详细解释了
HTTP
请求的组成部分,包括请求行、请求头和消息体等。最后,文中列举了
HTTP
请求方法,如GET、POST、PUT等,以及它们各自的应用场景。
Java SE
62,621
社区成员
307,251
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章