我正在试图弄清楚当它发送multipart / xmixed-replace响应时是否可以减慢服务器的速度。我希望我的客户端尝试对运动jpeg流进行速率限制。我发现了很多关于服务器在HTTP响应中发送的内容的文档,但没有提及客户端发送的内容。
客户端在multipart / x-mixed-replace响应中的每个部分之后发送什么(如果有的话)?如果它没有发送任何东西,服务器是否只是在部件上堆积?
答案 0 :(得分:1)
实际上我认为多部分是一个红色的鲱鱼,因为multipart的概念只是描述同一个消息体内的内容类型。因此,从服务器的角度来看(就发送内容的速率而言),它与发送单个大块数据并没有什么不同。
所以,我想知道你是否可以将Range标题只能请求一个特定范围 - 一次一个“部分”。
从响应头的末尾开始计算字节数。当您到达第一部分的末尾时,请记下读取的字节数并关闭连接。发送请求 相同的文档,但指定起始范围作为块末尾的字节。再次,阅读响应,当您到达零件的末尾时,将当前响应字节添加到上一个,关闭连接并重复广告恶心......
没有尝试过,但听起来它会起作用,只要服务器支持范围标题,并且你可以在客户端进行一些修补。
可能更容易编写一个客户端代理,通过丢弃数据包来限速...
答案 1 :(得分:0)
尝试为Mozilla使用LiveHTTPHeaders插件。我去了Gmail(使用AJAX)并跟踪客户端和服务器之间的对话几分钟。这似乎可以帮助你。
答案 2 :(得分:0)
在HTTP级别,我不认为客户端发送任何内容。服务器假设只要连接打开,它就可以继续发送响应。
我不认为这个问题有一个简单的HTTP级解决方案,因为客户端 - 服务器交换中没有“ack”概念。
这个问题显然有TCP / IP级解决方案。
我想知道当客户端实际收到服务器的响应头并且识别出响应是多部分时,客户端是否可以做一些不同的事情 - 然后它是否可以中止连接并打开一个新的非保持活动并且只是获取部件一个接一个......