나에게 필요한 지식과 기술을 검색해 보세요.

리얼월드 HTTP : 역사와 코드로 배우는 인터넷과 웹 기술

지은이

시부카와 요시키

옮긴이

김성훈

출간일

2019.04.20

레벨

초급

평점

4.6(5명)

정가

24,000

총 결제 금액

24,000

전자책 사용 안내

전자책은 웹뷰어와 한빛+ 앱에서 열람할 수 있으며 PDF 다운로드는 지원되지 않습니다.

쪽수

424P

ISBN

9791162248683

브랜드

한빛미디어

curl과 Go 언어로 배우는 HTTP의 과거, 현재, 미래 

 

웹 세상을 지탱하는 HTTP 기술의 변천사와 버전별 문법 및 의미론을 살펴보는 책입니다. HTTP 1.0, 1.1을 거쳐 2.0까지 브라우저 내부에서 일어나는 일과 서버와의 상호작용 등을 삽화와 예시로 소개합니다. curl, Go 언어, 자바스크립트 코드 예제로 복잡 다변한 HTTP 웹 기술을 한 권으로 정리했습니다. 모든 웹 개발자에게 권합니다.

 

 

주요 내용

  • 0.9부터 2.0까지 HTTP의 간략한 역사
  • 메서드와 경로, 헤더, 바디, 스테이터스 코드 등 HTTP의 기본 요소 이해
  • 브라우저 관점에서 바라본 HTTP와 웹 통신의 이면
  • REST API 아키텍처와 이론
  • curl 및 Go 언어로 웹 서비스 코드 테스트 방법 익히기
  • HTTP 개념을 숙지함으로써 새로운 기술을 따라잡을 기초 쌓기

추천사

앱 개발자, 인프라 엔지니어 모두에게 유익한 책입니다. 친절하게 HTTP 통신의 구조를 설명합니다. 실무에서 HTTP 통신은 터무니없는 응답과 요구가 난무하고, 패킷을 해석해 문제를 해결해야 할 때도 있다 보니, 많은 엔지니어에게 이 책이 도움이 되리라고 생각합니다. HTTP 통신 내용을 제대로 설명하는 책이 의외로 없어 난해한 RFC를 읽어야 할 때도 있었는데, 그럴 때에도 이 책이 큰 도움이 될 것입니다.

출판사 리뷰

온고지신의 자세로 배우는 HTTP의 모든 것 (ft. curl)

 

HTTP가 발전한 여정을 더듬으면서, 브라우저 내부에서 어떤 일이 일어나는지 그리고 서버와 어떻게 상호작용하는지 등을 다루는 책입니다. 메서드와 경로, 헤더, 바디, 스테이터스 코드 같은 HTTP 기본을 충실하게 설명하고, HTTP 1.0, 1.1을 거쳐 2.0까지 웹 세상을 지탱하는 HTTP 기술의 변천사와 버전별 문법 및 의미론을 살펴봅니다. 나아가 HTML5, 보안, REST API 같은 실무에서 꼭 알아야 할 주제를 따로 설명합니다.

HTTP의 과거부터 현재까지 모두 다루는 이유는, 기술의 기초가 되는 과거를 알면 미래에 나올 새로운 기술도 쉽게 따라잡을 수 있기 때문입니다. 테스트하기 좋은 코드 작성법, 알고리즘, 데이터베이스 등과 마찬가지로 HTTP는 노후화되지 않는 기술이며 한번 배워두면 꾸준히 도움이 되는 주제입니다.

 

수많은 사양이 들어 있는 모음집 RFC에 대한 참조와 함께 curl, Go 언어, 자바스크립트 등 코드 예제를 제공하므로 개발자가 폼 제출, 캐시 및 쿠키 관리, Keep-Alive, SSL/TLS, 프로토콜 업그레이드, 서버 푸시, SSE, 웹소켓 등의 동작 원리를 실습하며 학습할 수 있습니다. 복잡 다변한 HTTP 웹 기술을 한 권으로 정리하고 싶은 모든 웹 개발자에게 권합니다.

저자

목차

CHAPTER 1 HTTP/1.0의 신택스: 기본이 되는 네 가지 요소 

1.1 HTTP의 역사 

1.2 HTTP/0.9로 할 수 있는 것을 시험하다

1.3 HTTP/0.9에서 1.0으로의 여정 

1.4 HTTP의 조상 (1) 전자메일 

1.5 HTTP의 조상 (2) 뉴스그룹 

1.6 리디렉트 

1.7 URL

1.8 바디 

1.9 마치며

 

CHAPTER 2 HTTP/1.0의 시맨틱스: 브라우저 기본 기능의 이면 

2.1 단순한 폼 전송(x-www-form-urlencoded)

2.2 폼을 이용한 파일 전송

2.3 폼을 이용한 리디렉트 

2.4 콘텐트 니고시에이션 

2.5 쿠키 

2.6 인증과 세션 

2.7 프록시 

2.8 캐시 

2.9 리퍼러 

2.10 검색 엔진용 콘텐츠 접근 제어 

2.11 마치며 

 

CHAPTER 3 Go 언어를 이용한 HTTP/1.0 클라이언트 구현 

3.1 Go 언어를 이용하는 이유 

3.2 Go 언어의 API 구성 

3.3 이 장에서 다룰 레시피 

3.4 GET 메서드 송신과 바디, 스테이터스 코드, 헤더 수신

3.5 GET 메서드+쿼리 전송 

3.6 HEAD 메서드로 헤더 가져오기 

3.7 x-www-form-urlencoded 형식의 POST 메서드 전송 

3.8 POST 메서드로 임의의 바디 전송 

3.9 multipart/form-data 형식으로 파일 전송 

3.10 쿠키 송수신 

3.11 프록시 이용 

3.12 파일 시스템 액세스 

3.13 자유로운 메서드 전송 

3.14 헤더 전송 

3.15 국제화 도메인 

3.16 마치며 

 

CHAPTER 4 HTTP/1.1의 신택스: 고속화와 안전성을 추구한 확장

4.1 통신 고속화

4.2 전송 계층 보안(TLS)

4.3 PUT 메서드와 DELETE 메서드의 표준화

4.4 OPTIONS, TRACE, CONNECT 메서드 추가

4.5 프로토콜 업그레이드 

4.6 가상 호스트 지원 

4.7 청크 

4.8 바디 전송 확인 

4.9 마치며

 

CHAPTER 5 HTTP/1.1의 시맨틱스: 확장되는 HTTP의 용도

5.1 파일 다운로드 후 로컬에 저장하기 

5.2 다운로드 중단과 재시작

5.3 XMLHttpRequest 

5.4 지오로케이션

5.5 X-Powered-By 헤더 

5.6 원격 프로시저 호출

5.7 WebDAV

5.8 웹사이트 간 공통 인증 및 허가 플랫폼 

5.9 마치며 

 

CHAPTER 6 Go 언어를 이용한 HTTP1.1 클라이언트 구현

6.1 Keep-Alive

6.2 TLS

6.3 프로토콜 업그레이드 

6.4 청크 

6.5 원격 프로시저 호출

6.6 마치며 

 

CHAPTER 7 HTTP/2의 신택스: 프로토콜 재정의 

7.1 HTTP/2

7.2 Fetch API

7.3 server-sent events

7.4 웹소켓

7.5 WebRTC

7.6 HTTP 웹 푸시

7.7 마치며 

 

CHAPTER 8 HTTP/2의 시맨틱스: 새로운 활용 사례

8.1 반응형 디자인 

8.2 시맨틱 웹 

8.3 오픈 그래프 프로토콜 

8.4 AMP

8.5 HTTP 라이브 스트리밍에 의한 동영상 스트리밍 재생 

8.6 MPEG-DASH 동영상 스트리밍 재생 

8.7 마치며 

 

CHAPTER 9 Go 언어를 이용한 HTTP/2, HTML5 프로토콜 구현

9.1 HTTP/2

9.2 HTTP/2의 서버 푸시 

9.3 server-sent events

9.4 웹소켓 

9.5 마치며 

 

CHAPTER 10 보안: 브라우저를 보호하는 HTTP의 기능

10.1 기존의 공격 

10.2 브라우저를 노리는 공격의 특징 

10.3 크로스 사이트 스크립팅 

10.4 중간자 공격 

10.5 세션 하이재킹

10.6 사이트 간 요청 위조

10.7 클릭재킹

10.8 리스트형 계정 해킹

10.9 웹 애플리케이션을 위한 보안 가이드라인 

10.10 웹 광고 및 보안

10.11 마치며 

 

CHAPTER 11 클라이언트 시점에서 보는 RESTful API

11.1 RESTful API

11.2 메서드 

11.3 스테이터스 코드

11.4 바디 

11.5 실제 REST API 살펴보기(PAY.jp) 

11.6 실제 REST API 살펴보기(깃허브) 

11.7 REST API에 액세스할 때 주의할 점

11.8 마치며 

 

APPENDIX A Go 언어의 JSON 파싱 

A.1 Go 언어의 구조체 태그를 사용한 JSON 파싱

A.2 JSON 응용하기

리뷰

전체 평점

4.6

오탈자

등록된 오탈자가 없어요

오탈자를 발견하셨다면 작성해주세요.

24,000

24,000