所以我有一個任務,我必須用選定的編程語言創建一個HTTP服務器。沒什麼大不了。我遇到了一個我似乎無法解決的問題。每次我加載主頁和服務器響應時,它會打印出大約5次。不能找出原因。好了,所以我的意思:HTTP Server System.out問題
代碼段:
while(true){
connectedClient = listenSocket.accept();
inFromClient = new BufferedReader(new InputStreamReader(connectedClient.getInputStream()));
outToClient = new DataOutputStream(connectedClient.getOutputStream());
String requestString = inFromClient.readLine();
String headerLine = requestString;
StringTokenizer tokenizer = new StringTokenizer(headerLine);
String httpMethod = tokenizer.nextToken();
String httpQueryString = tokenizer.nextToken();
requestString = inFromClient.readLine();
if (httpMethod.equals("GET")) {
if (httpQueryString.equals("/Home")) {
// The default home page status code 200
dateHeader();
connectionCloseHeader();
}
//other code not related
}
這是我迄今爲止頭方法:
public static void dateHeader() throws Exception{
DateFormat dateFormat = new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss z");
Date date = new Date();
System.out.println("Date: " + dateFormat.format(date));
}
我輸出到終端將成爲日5張打印輸出。我確信連接和關閉,但同樣的事情發生。任何人都知道爲什麼會發生這種情況?謝謝。
編輯
似乎在使用Chrome時,我得到一個打印出來沒有問題。我正在用Opera進行測試,並且給了我5個打印輸出。也許瀏覽器的工作方式導致了這個問題。不過現在只是使用chrome。
因此,返回的頁面反過來引用如圖像,CSS,JS和一些資源,其網頁瀏覽器需要下載呢? – BalusC
它現在所做的只是向瀏覽器輸出一條消息。該頁面現在不傳遞任何內容。只是一個簡單的客戶消息。但我似乎已經找出了這個問題。 – yaegerbomb