본문 바로가기

Development/HTTP

(7)
HTTP 요청 흐름의 이해 (번역) Understand the Flow of a HTTP Request 를 번역한 글 입니다. 브라우저에서 엔터 키를 눌렀을 때, 무슨 일이 일어나는 지 궁금한 적이 있는가? 이 아티클은 개발자의 관점에서, 개발자가 알아야 할 'HTTP 요청이 수행될 때 일어나는 일'에 대해 알려준다. HTTP가 단순히 Document 전송 프로토콜일지라도, 본질적으로 인터넷의 근간이 된다. HTTP 요청은 주소창에 URL을 입력하거나, 앱, 웹사이트 또는 다른 프로그램을 이용하는 것으로 요청이 시작되고, 응답을 수신하면 끝이 나는데, 이 사이에 마법이 일어난다. 이것이 우리가 전형적으로 HTTP 요청을 이해하는 방식이다.(과하게 표현하면) 우리 시스템에서 app.mydomain.com/me 를 열었다고 해보자. 브라우저는..
HTTP 메시지 헤더에 대해 조금 더 . . . 헤더 ?메시지 헤더는 특정 종류의 메시지에만 사용할 수 있는 헤더와, 조금 더 범용적인 목적으로 사용할 수 있는 헤더, 그리고 응답과 요청 메시지에서 정보를 제공하는 헤더가 있다 - 일반 헤더 General Header클라이언트와 서버 양쪽 모두가 사용하며, 클라이언트나 서버 혹은 또다른 애플리케이션을 위해 여러 목적으로 사용됨.ex. Date : Tue, 3 Oct 1992 02:14:01 GMT - 대상에게 시간을 알려줌Connection 클라이언트와 서버가 커넥션에 대한 옵션을 정할수 있게 알려줌MIME-Version 발송자가 사용한 MIME 버전Trailer chunked transfer 인코딩으로 "인코딩된 메시지"의 끝부분에 위치한 헤더들의 목록 나열Transfer-Encoding 메시지에 어..
HTTP 메시지 - 메서드 안전한 메서드란 무엇일까 ? 결론과 예를 말하자면, GET과 HEAD는 안전하다고 말할 수 있다. 그 이유는 클라이언트가 서버로 GET, HEAD를 요청 한다고 해서, 서버에서 달라지는 것은 아무것도 없다.즉, Select-조회하여 뿌려주기만하고, 서버 자체의 변화는 아무것도 없다는 것이다. 이를 우리는 안전한 메서드라고 말한다. 이번에는 POST 요청을 했다고 해보자. 클라이언트는 서버로 일련의 데이타들을 보낼 것이고, 그 데이타들은 서버 내에서 어떠한 작용을 한다 ( POST의 목적이므로 )즉 서버 자체에 변화가 일어난 것이다. (결제가 일어난다거나,, 그룹이 생성된다거나 .. ) 안전한 메서드의 목적은, 서버에 영향을 미치는 안전하지 않은 메서드가 사용될 때 사용자들에게 그 사실을 알려주는 HTTP..
3. HTTP 메시지 - 기본 구조 HTTP 메시지란? 텍스트 메타 정보와 데이타로 구분할 수 있다 . HTTP 메시지는 클라이언트의 요청이 서버방향으로 이동하며(인바운드) , 서버에서 처리가 끝난 뒤 결과값을 클라이언트로 리턴해준다(아웃바운드)또한 메시지는 항상 다운스트림으로 흐르며, 발송자는 수신자의 업스트림이다 HTTP 메시지 단순한 데이타의 구조화된 블록이라 할 수 있다. 시작줄 / 헤더 / 바디 이렇게 세 부분으로 이루어진다. - 시작줄 ? Request 시, 메서드와 요청 URL, HTTP version ( GET /exam/help.txt HTTP/1.1 )Response 시, HTTP version, 상태 코드 및 사유 구절 ( HTTP/1.1 200 OK ) - 메서드 ? Request 의 시작줄은 메서드로 시작하며, 기본..
2. URL과 리소스 - URL 단축과 확장, 설계 절대 URL - 리소스에 접근하는 필요한 모든 정보를 가지고 있음상대 URL - 상대 URL로 리소스에 접근하기 위해 필요한 모든 정보를 얻기 위해서는 base URL을 사용함. URL 단축 www.asdf.com/shop.html이 가리키는 리소스 내용 중 다음과 같은 엘리먼트가 있을 때,
2. URL과 리소스 - URL 문법 URL 문법 URL. 통합자원식별자. : 브라우저가 정보를 찾는데 필요한 리소스의 위치.URN은 그 리소스가 어디에 존재하든 리소스의 이름으로만 식별하지만, URL은 리소스가 어디에 있는지를 포함한다. 다음 URL을 보자.http://www.joes-hardware.com/seasonal/index-fall.html - http 는 URL 의 스킴. 즉, 웹 클라이언트가 어떻게 리소스에 접근하는지 표현.- 다음으로 www.joes-hardware.com 은 리소스가 존재하는 서버의 위치(주소), 리소스가 어디에 호스팅 되어 있는가.- /seasonal/index-fall.html 은 서버상의 리소스의 경로. 서버상의 로컬 리소스들 중에서 요청받은 리소스가 무엇인가. 대부분의 URL 스킴의 문법은 일반적으..
1. HTTP 개관 1장은 대체로 HTTP에 대해서 얕게 훑은 형식의 워밍업 챕터이다. 이해하기 쉬운 용어와 친절한 설명으로........... 웹 애플리케이션, 서버, 웹브라우저 등은 모두 HTTP(HyperText Transfer Protocol)을 통해 대화 이때, HTTP는 신뢰성 있는 데이타 전송 프로토콜을 사용 -- 데이타 유실이나 왜곡에 안전함 웹 서버(HTTP 서버)에 인터넷에 데이타를저장하고, 클라이언트가 이로 데이타 요청을 함 ! 이를테면, 클라이언트가 웹 브라우저 상에서 http://www.asdf.com/index.html 을 입력하면, www.asdf.com 서버로 HTTP 요청을 보내어 index.html 이라는 리소스를 가져올것을 기대함. 웹 리소스 ? 정적 파일(텍스트파일, HTML 파일, JP..