Html的持久连接

kukiius 2014-03-19 11:55:43
有什么书介绍这方面的内容的?用Java实现。

我写了个简易的服务器,浏览器发来请求后就返回一个html页面,页面有一个图片。
但是浏览器只发了一个请求,没有发送请求图片的请求,有图片显示,是什么意思?
怎样改成支持持久连接?是不关闭socket一直反复查看socke.available();?
	@Test
public void testService()throws Exception{
ServerSocket ss = new ServerSocket(8080);


while(true){
System.out.println("Start Accept...");
Socket s = ss.accept();

print(s,"Socket");

InputStream input = s.getInputStream();
Thread.sleep(200);
print(input.available(),"可接收字节数");

while(input.available() != 0){
print(s.getKeepAlive(),"KeepAlive");


input.read(new byte[input.available()]);

//发送html文件
FileInputStream fi = new FileInputStream("E:\\jhw\\eclipse\\test\\src\\test\\a.html");
byte[] buffer = new byte[1024];
int c = fi.read(buffer);
OutputStream os = s.getOutputStream();
while(c != -1){
os.write(buffer, 0, c);
c = fi.read(buffer);
}
os.flush();

Thread.sleep(2000);
}
s.close();
}
}
...全文
113 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
kukiius 2014-03-20
  • 打赏
  • 举报
回复
引用 2 楼 kuki_iu 的回复:
[quote=引用 1 楼 rumlee 的回复:] 1、html页面有图片,这对于浏览器来说实际上是两个请求,先请求的是html页面,根据html页面上的图片URL再请求图片。 2、不知道你说的持久连接是什么意思,你是想要干什么?就算你浏览器把连接没关闭,但是你这个服务端每次处理结束后就自动关闭了连接了啊。
1.但是我用HTTPWATCH看的浏览器只发送了一个连接请求(没有请求html页面吧,我写的是连接上服务器后发送了一个html页面给浏览器),图片的请求没有发送? 2.就是说浏览器第一次连接到服务器上后,怎样让这个socket不关闭的情况下,一直监听浏览器是否有其他的请求到,就不用每个请求都开一个socket。这个监听怎么实现,服务器怎样知道浏览器又发送请求过来了?[/quote] 另外我从服务器解析到浏览器只发送了三个连接请求1是连接请求,2是图标请求,3是什么东西都没有的请求
kukiius 2014-03-20
  • 打赏
  • 举报
回复
引用 1 楼 rumlee 的回复:
1、html页面有图片,这对于浏览器来说实际上是两个请求,先请求的是html页面,根据html页面上的图片URL再请求图片。 2、不知道你说的持久连接是什么意思,你是想要干什么?就算你浏览器把连接没关闭,但是你这个服务端每次处理结束后就自动关闭了连接了啊。
1.但是我用HTTPWATCH看的浏览器只发送了一个连接请求(没有请求html页面吧,我写的是连接上服务器后发送了一个html页面给浏览器),图片的请求没有发送? 2.就是说浏览器第一次连接到服务器上后,怎样让这个socket不关闭的情况下,一直监听浏览器是否有其他的请求到,就不用每个请求都开一个socket。这个监听怎么实现,服务器怎样知道浏览器又发送请求过来了?
rumlee 2014-03-20
  • 打赏
  • 举报
回复
1、html页面有图片,这对于浏览器来说实际上是两个请求,先请求的是html页面,根据html页面上的图片URL再请求图片。 2、不知道你说的持久连接是什么意思,你是想要干什么?就算你浏览器把连接没关闭,但是你这个服务端每次处理结束后就自动关闭了连接了啊。

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧