실습 | 통신 테스트

서버 프로그램과 클라이언트 프로그램을 작성했다면 정상적으로 작동하는지 테스트를 해봐야겠죠? 아래와 같이 테스트를 해봅시다.

터미널 창을 두 개 띄우고, 하나는 서버 프로그램을 실행시킨 뒤 다른 하나는 클라이언트 프로그램을 실행시킨다. usleep이나 sleep을 사용해서 클라이언트 프로그램에서 서버 프로그램으로 정기적 메시지를 보내고, 서버 프로그램은 자신이 받은 메시지를 출력한 뒤 클라이언트 프로그램으로 그대로(혹은 모두 대문자로 바꿔서) 되돌려준다. 클라이언트 프로그램은 돌려받은 응답을 출력한다.

잘 되나요? 브라우저를 클라이언트로 삼아서 테스트를 해봅시다. 이 경우 최소한의 응답 양식을 갖춰서 전송할 필요가 있는데요.

HTTP/1.1 200 OK\r\nContent-Length:X\r\n\r\n

위의 텍스트를 앞에 놓고, 리턴할 데이터를 이어서 붙인 뒤 body로 붙인 문자열의 길이만큼 X 값을 설정해줍니다. 정상적으로 설정되었다면 브라우저에서 127.0.0.1:[설정한 포트 번호] 형식으로 주소창에 입력했을 때 응답 본문이 뜰 거에요!

netwhat 기억나시나요? mac이라면 option 키를 누른 상태에서 우측 상단의 와이파이 아이콘을 눌렀을 때 ip를 확인할 수 있고, 다른 운영체제도 각자의 방법으로 ip를 확인할 수 있는데 이를 기반으로 bind 함수를 실행하면 핸드폰으로도 접속이 가능합니다. 한 번 테스트해보세요!

Last updated