171113-TIL

Reading time ~1 minute

오늘 한일

- 레벨 4 시작 : HTTP 웹 서버 구현 실습

  • 요구사항 1 : 요청 URL에 따른 페이지 제공
  • 요구사항 2 : GET 메소드에 따른 URL 파싱 및 데이터 저장(회원 가입, 유저 저장)
  • 요구사항 3 : GET 메소드에서 POST로 변경
  • 요구사항 4 : 회원 가입 이후 302 code를 이용하여 redirect형태로 index.html 이동
  • 새로 알게된 내용

    Favicon

    파비콘은 웹페이지에 접속했을때, 상단 탭에 보여지는 아이콘을 일컫는다. 이 아이콘은 즐겨찾기에 웹페이지를 등록할때도 사용된다. 웹사이트를 대표하는 로고(logo)의 개념과 비슷하며, 사이트의 성격을 드러내기도 한다. (출처)


오늘 느낀점

  • 이전에 HTTP에 대해서 간단히 공부하면서 Request, Response Header에 어떠한 것들이 포함되는지는 알고 있었지만 이번에 직접 해당 Header 정보를 가지고 데이터 처리를 한 덕에 이전까지는 어줍잖은 키워드들만 머리에 가지고 있었다면, 어떠한 요소들로 구성되어 있으며 어떻게 활용하는지 와닿게 되었다.

  • 조금은 남들과 다른게 무언갈 만들어가는 것보단 내가 사용하는 것이 어떤 원리로 돌아가는지 공부하는게 재밌는거 같다.”아! 이렇게 되는거였구나” 같은 재미가 있다.(단, 내가 이해가 간다는 전제조건과 해당 원리에 호기심이 가는건 제멋대로지만..)이전 스프링부트에서 @GetMapping(“/~”), @PostMapping(“/~”) 및 파라미터를 받는 것들이 애노테이션을 사용하는 등 좀 다른 방식이긴 하겠지만 HTTP를 이런식으로 사용한다는 방식에선 같을거 같은데 Get, Post로 매핑 및 파라미터의 이름을 input박스의 name과 맞추던, 당연히 아무 생각 없이 사용하던 것들이 추가적인 작업이 있겠지만 이런식으로 돌아간 다는 점에서 신기하고 재밌는거 같다. 덤으로 로우한걸 좋아한다기 보단 관심이 가는 것의 원리를 공부하는게 재밌는거 같다.(그래서 그게 그거인 경우도 있지만) 솔직히 요즘 흥미가 떨어졌는데 다시 붙는다.

  • 파비콘! 이전까지 브라우저 탭에 뜨는 아이콘들을 단순히 로고쯤으로 생각했고 그냥 해당 사이트를 나타내는 이미지라고만 생각 했는데 오늘 HTTP를 구현하다가 자꾸 request가 두번씩 오길래 뭔가 싶어서 읽어보다보니까 “GET /favicon.ico HTTP/1.1”을 보게 되었다. 그덕에 이전까지 로고라고 생각했던게 뭔지 알게 되었고 어떻게 불려오는지 알게 되었다. 나중에 마음에 드는 이미지가 있으면 해당 이미지로 바꿔봐야겠다.

  • 좀 더 작업하고 싶었는데 4~5시쯤부터 마우스 상태가 안좋더니 8시부터 건전지가 다 달아서 작동이 안됐다. 터치패드로 해도 되긴한데 맥북의 터치를 경험하고 나니 도저히 할맛이 안났다. 자꾸 오클릭도 일어나고 급 작업의 흥이 깨져서 관뒀는데 아쉽다.

  • 프레임워크와 라이브러리의 차이점이 뭔지 체감이 크게 안됐는데(글로 봐도 크게 와닿지 않았다) 오늘 느낀것 중 하나가 라이브러리는 단순히 함수(C라면)들을 제공해주는데 프레임워크는 단순히 함수들을 제공해주는게 아니라 많은걸 미리 만들어서 제공해주는 거 같다. 아직은 말로 표현할 정도는 아닌거 같다. 굳이 따지면 오늘 내가 하고 있는게 라이브러리들을 사용하는거고 이를 이용하여 어느정도 자동화(?)를 이루게 하면 프레임워크가 될것 같은 느낌이랄까?? 그러고보니 지금 내가 하고 있는 작업들이 나만의 라이브러리를 만드는 거였던가 프레임워크를 만드는 거였던가?? 물어봐야겠다.


내일 할일

  • HTTP 웹 서버 구현 실습 pr을 보내도록 하자