아래와 같은 소켓서버프로그램 서버코드가 있다.
ServerSocket server = new ServerSocket(5555);
while(true) {
System.out.println("Listen...");
Socket socket = server.accept();
// logic
new Thread().start();
}
브라우저 주소창에 localhost:5555 로 접속요청을 하면
console이 2번찍힌다. 즉, 요청이 2번 들어온다. 딱! 2번 ! (쓰레드가 두번 시작된다)
이유가 무엇일까?
바로 첫 요청은 정상적인 localhost:5555/1.txt 이러한 요청이고,
두번째 요청은 localhost:5555/favicon.ico 요청이었다.
어떻게 찾았냐면,
전달받은 uri 값으로 서버에 있는 폴더에서 uri와 동일한 이름을 가진 파일을 response 해주는 로직을 짜던 도중
한번은, 정상적으로 작동하고, 한번은 자꾸 FileNotFoundException 이 뜨는 것이었다.
아까전 강의때 강사님이 파비콘 요청이 들어온다는 말씀을 해주셨는데, 그때는 그런가보다 하고 넘어갔는데,
그게 이말이었구나!!!!!!!!!!!!!!!!!!