네트워크 4

[네트워크/Network] HTTP 상태 코드 파헤치기

REST API 포스팅에서 HTTP 상태 코드에 대해 간략하게 정리했는데 복기하는 마음으로, 조금 더 자세히 알아봤다. HTTP status code HTTP 상태 코드는 클라이언트가 보낸 요청(request)이 성공적으로 완료되었는지 응답(response)을 통해 알려준다. 이러한 응답은 5개의 그룹으로 나뉘어진다. 상태 코드는 3자리 수로 나타내는데, 가장 앞자리 수가 바로 응답의 종류를 의미한다. 상태 그룹 역할 1XX Informational 현재 요청까지 처리했다는 임시적인 응답 2XX Success 클라이언트의 요청을 성공적으로 처리 3XX Redirection 요청을 완료하기 위해 추가적인 동작 필요 4XX Client Error 클라이언트의 요청 내용이 잘못된 경우 5XX Server Er..

[네트워크/Network] RESTful한 API 설계하기

이전 포스팅에서 API가 무엇인지 간략하게 알아봤다. 소프트 스퀘어드 4주차 과제는 이러한 API를 REST하게 설계하는, 즉 RESTful API를 만드는 것이다. 설계에 앞서 REST API 가 무엇인지 제대로 알고 싶어 정리했다. REST API REpresentational State Transfer 의 약자로 2000년도에 Roy Fielding 박사 논문에서 최초로 소개되었다. 로이 필딩은 HTTP 주요 저자 중 한 사람으로 웹의 장점을 최대한 활용할 수 있는 아키텍처로써 REST를 발표했다고 한다. REST 구성 자원(Resource) : URI 행위(Verb) : HTTP Method 표현(Representations) 쉽게 말해 REST는 URI를 통해 자원을 표시하고, HTTP Meth..

[서버/Server] 백엔드 틀 잡기 4/5 - API

전공자로써 API라는 용어를 수도 없이 들었다. 심지어 졸업작품으로 진행했던 프로젝트에서 Google cloud vision API 를 가져다 썼었지만 정작 정확한 의미는 모르고 있었다. API가 도대체 뭔데? 위키백과에서는 API를 응용 프로그램에서 사용할 수 있도록, 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스 라고 정의한다. 그렇게 와닿는 말은 아닌 것 같다. 이해하기 쉽도록 예시를 준비해봤다. 매개체 Application Programming Interface 에서 interface라는 단어에 초점을 맞춰보자. 직역하면 서로 맞대는 면 정도로 해석할 수 있다. 사용자가 스마트폰 사용하는 모습을 상상해보자. 홈 화면을 보기 위해서는 전원 버튼을 눌러야 하고, 우리는..

[서버/Server] 백엔드 틀 잡기 2/5 - 네트워크

컴파일 설치와의 작별 소프트 스퀘어드 에서의 1주차 과제는 Linux 위에 APM을 컴파일 설치하여 서버를 구축하는 것이었다. 단순히 apt와 같은 패키지 매니저를 사용했으면 편했겠지만 컴파일 설치가 왜 중요한지, 어떨 때 사용하는지를 알 수 있었고 덕분에 CLI (Command Line Interface) 환경에 조금 더 친숙해졌다. 어제 2주차 수업을 들으며 앞으로는 컴파일 설치를 하지 않아도 된다는 나름 희소식을 들었다. 스타벅스 가서 아메리카노 마실래 뚱딴지 같은 소리로 들릴 수도 있지만 2주차 Network 수업은 위의 문장으로 시작됐다. 결론부터 말하자면 아래의 설명을 쉽게 이해할 수 있도록 비유한 것이다. 개인적으로 설명을 들을 때 이렇게 비유와 예시가 동반되면 이해하기 훨씬 수월한 것 같다..