我已經構建了一個簡單的Java程序,可以在本地作爲服務器使用。保持來自自制Java服務器的持續連接
在它做了一些事情,比如預覽目錄的那一刻,轉發到index.html的,如果目錄中包含它,發送Last-Modified
頭和正確地響應客戶端的請求If-Modifed-Since
。
我現在需要做的是讓我的程序接受持久連接。它目前是線程化的,這樣每個連接都有自己的線程。我想把我的整個線程代碼放在一個循環中,直到Connection: close
或指定的超時。
有沒有人有任何想法從哪裏開始?
編輯:這是一個大學項目,必須在沒有使用框架的情況下完成。
我有一個無限循環的主要方法,每次循環它創建一個Socket對象,然後創建一個HTTPThread
對象(我自己創建的一個類) - 處理單個請求。
我想允許多個請求在單個連接內使用Connection: keep-alive
請求標頭進行工作。我期望在我的HTTPThread
類中使用循環,我只是不確定如何傳遞多個請求。
感謝提前:)
你能再解釋一下,當你說「持續連接」時,你的意思是什麼?如果會話臨時斷開連接,您是否可以保存會話狀態以恢復會話狀態? – AlexR
我的問題是我不完全明白我需要做什麼!目前我有一個循環調用一個名爲HTTPThread的類。它傳遞一個inputStream和一個outputStream。 HTTPThread類然後相應地解析請求。如果連接狀態是保持活動狀態,我想以某種方式使用我已經有的下一個請求的連接。 – Alex