我已经构建了一个简单的Java程序,可以在本地作为服务器使用。保持来自自制Java服务器的持续连接
在它做了一些事情,比如预览目录的那一刻,转发到index.html的,如果目录中包含它,发送Last-Modified
头和正确地响应客户端的请求If-Modifed-Since
。
我现在需要做的是让我的程序接受持久连接。它目前是线程化的,这样每个连接都有自己的线程。我想把我的整个线程代码放在一个循环中,直到Connection: close
或指定的超时。
有没有人有任何想法从哪里开始?
编辑:这是一个大学项目,必须在没有使用框架的情况下完成。
我有一个无限循环的主要方法,每次循环它创建一个Socket对象,然后创建一个HTTPThread
对象(我自己创建的一个类) - 处理单个请求。
我想允许多个请求在单个连接内使用Connection: keep-alive
请求标头进行工作。我期望在我的HTTPThread
类中使用循环,我只是不确定如何传递多个请求。
感谢提前:)
你能再解释一下,当你说“持续连接”时,你的意思是什么?如果会话临时断开连接,您是否可以保存会话状态以恢复会话状态? – AlexR
我的问题是我不完全明白我需要做什么!目前我有一个循环调用一个名为HTTPThread的类。它传递一个inputStream和一个outputStream。 HTTPThread类然后相应地解析请求。如果连接状态是保持活动状态,我想以某种方式使用我已经有的下一个请求的连接。 – Alex