크롬이든 사파리든 우리는 웹 브라우저를 통해 서버에 무언가 요청을 보낸다. 지금 이 글을 읽고있는 사람들도 웹 브라우저에서 요청을 했기에 서버에서 응답 메시지를 보냈을 것이고 별 재미도 없는 글이 출력되었겠지.
이번에는 클라이언트 입장에서 서버에 요청을 보내고 받는 데 쓰는 프로그램인 브라우저에 대해 알아보도록 하겠다.
웹 서버와 쌍방향 통신을 하는 프로그램이다. 어떤 제품들이 있는지에 대한 서술은 생략하도록 하겠다. 필자는 주로 크롬을 많이 쓴다. 맥북 유저라고 다 사파리를 쓰는 거 아니다. 진심으로....
browse 라는 영어 단어를 그대로 해석해보자. 검색한다는 의미다. 우리는 인터넷에서 검색을 할 때 브라우저를 사용한다. 정말 간단히만 서술하면 이 정도로 끝낼 수 있다.
웹 브라우저는 HTTP를 통해 웹 서버와 통신을 하는 역할을 한다. 웹 페이지를 가져오기도 하지만, 정보를 전달하기도 한다. 즉 양방향 통신을 한다. 서버에게 전달 받은 HTML(Hyper text markup language) 를 출력함으로써 웹페이지를 사용자에게 보여주는 역할 또한 한다. 뿐만 아니라 이미지 파일들 또한 다양한 포멧을 지원하므로 출력시켜줄 수 있다. 다양한 플러그인들을 통해 이미지, 영상 등 또한 출력 가능하도록 만들 수 있다.
대부분의 브라우저가 공통적으로 지원하는 기능은 아래와 같다.
그 외에 즐겨찾기, 확장 플러그인 등 브라우저마다 차이는 있지만 이렇나 기능들을 제공해줌으로써 사용자가 편하게 웹 서핑을 할 수 있도록 돕는다.
개발자 도구를 통해 클라이언트(사용자) 입장에서 어떻게 웹 페이지가 전달되는 지, Javascript 코드가 어떻게 실행되는 지 등을 확인할 수 있는 도구다. 개발자도구 창의 콘솔 창에서 즉석에서 Javascript 코드를 실행 시켜 볼 수 있고 서버와 통신했던 내역들을 보면서 어떻게 서비스가 진행되는 지 확인 해 볼 수도 있다.
어떠한 브라우저를 선택하든 상관은 없지만 개인적으로는 크롬을 추천한다. 다양한 플러그인들을 지원하기도 하고 조금 메모리를 잡아먹기는 하지만 속도도 빠르고 기능도 다양하니까.
어려운 내용은 아니지만 반드시 알아야만 하는 내용들이다. 결국 서버사이드라고 해도 이 브라우저에 어떻게 데이터가 전달되는지가 중요하니까.