Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Web http spec(basic)

281 views

Published on

http spec and restful api for basic user

Published in: Technology
  • Be the first to comment

Web http spec(basic)

  1. 1. SANG HYUN, PARK Front-End-Development WEB HTTP SPEC
  2. 2. 01 REST 02 URI 03 HTTP의 기본 04 HTTP 메서드 05 WEB
  3. 3. 01 REST Representational State Transfer 분산 하이퍼미디어 시스템을 위한 소프트웨어 아키텍처의 한 형식 웹 전체의 아키텍처 스타일
  4. 4. 요즘에는 XML과 HTTP를 사용하는 웹기반 인터페이스를 지칭
  5. 5. “RESTful하다”
  6. 6. “하나의 URL에는 하나의 정보만!” 리소스를 유일한 URL 값으로 매핑한다. 왜냐하면 다른 리소스를 요청하는 경우에도 URL이 같기 때문이다. 하나의 URL에 여러개의 파라미터 정보를 "XML 형태의 Body 데이터"로 던지고 있다면 이것은 RESTful 하지 않은 것이다. Post ID Seat No Time User ID theme
  7. 7. “Resource 따라 Request 다르게”
  8. 8. 응답에 대한 메타데이터를 Body 에 포함 하지 않는다.
  9. 9. URL에는 명사만! /reservation/001/activate /reservation/001/status 동사 사용은 메서드를 의미하는지, 리소스를 의미하는지 구분이 모호해 질 수 있다.
  10. 10. 동일한 URL에서 친구에게 내가 보고 있는 특정한 콘텐츠를 보여줄 방법은?
  11. 11. 01 Ajax 통신을 통해 이동되는 페이지의 URI 은 현재 URI의 #! 이후에 붙인다. 02 페이지가 처음 열릴 때, #! 이후로 URI가 붙어있다면 해당 URI로 redirect를 해준다.
  12. 12. 02 URI Uniform Resource Identifier 리소스를 통일적으로 식별하는 ID 웹에 있는 자원에 간단하게 접속할 수 있는 주소 (URI = URL + URN)
  13. 13. 우리가 브라우저의 주소창에 입력하는 주소 URL ‘Uniform Resource Locator’
  14. 14. 자원에 대해 영속적이면서 유일한 정보 URN ‘Uniform Resource Name’
  15. 15. http://<authority><path>?<query> URI를 통해 서버에 데이터를 전달하고자 할 때 사용 key와 value 쌍을 이뤄야하며 여러 개일 경우 &로 연결
  16. 16. http://<authority><path>#<fragment> 일반적으로 URI의 가장 뒷부분에 위치 문서에 정의한 식별자의 위치로 이동시키는데 사용
  17. 17. http://www.julia.net/selected/books.html URI 스킴에서 패스까지 전부 기입 폴더명으로 끝나는 경우에는 끝부분에 ‘/’를 붙임 절대URI의 파일명이 생략된 경우, 서버에 설정된 기본 파일 값이 참조됨 절대 URI
  18. 18. ./sites.html ‘.’ 같은 폴더 ../reports/index.html ‘..’ 한 단계 위 폴더. 어떤 파일과 폴더를 기점으로 한 다른 파일의 경로 자기 사이트 안의 폴더와 파일을 참조하는 경우 기본적으로 상대URI를 사용. ‘/’로 시작하는 상대URI를 ‘절대패스’라고 함 상대 URI
  19. 19. URL 설계 01 프로그래밍 언어에 의존적인 확장자 NO 03 프로그래밍 언어의 메서드명 NO 02 구현에 의존적인 경로명 NO 04 세션 ID를 포함 NO 05 해당 리소스를 표현하는 명사 OK
  20. 20. http://example.com/cgi-bin/login.pl http://example.com/Login.do?action=showPage http://example.com/home.jsp?jsessionid=12345678 http://example.com/sample/people/show/123
  21. 21. 03 HTTP의 기본 Hyper Text Transfer Protocol 클라이언트와 서버 사이에 이루어지는 요청 /응답(request/response) 프로토콜 하이퍼텍스트를 전송하기 위한 프로토콜
  22. 22. 실제로는 하이퍼텍스트 이외의 다양한 것을 전송하고 있으며, 그것은 리소스 상태의 표현이다.
  23. 23. Client 서버에 일정 서비스를 요구하는 자
  24. 24. 요청하는 정보를 제공하는 자(컴퓨터) Server
  25. 25. State Code 서버가 클라이언트에 보내는 요청에 대한 응답
  26. 26. 04 HTTP 메서드 HTTP의 요청 메시지를 특징짓는 메서드 8개의 메서드로 구성 GET, POST, PUT, DELETE, HEAD, OPTIONS, TRACE, CONNECT
  27. 27. GET 지정한 URL의 정보를 가져온다.
  28. 28. GET 파라미터를 Url상에 표현하여 서버에 넘겨준다. Url에 표기되므로 보안이 필요한 정보는 문제가 생길 수 있다. 서버의 상태를 변경하지 않는다.
  29. 29. POST 폼에 입력한 데이터를 서버에 전송하여 상태를 변경하는 작업에 대부분 사용된다.
  30. 30. POST 파라미터가 url상에 표기되지 않고 http body에 입력된다. 주소창에 값을 표기하지 않아 데이터의 크기에 제한이 없다.
  31. 31. PUT 리소스 갱신, 작성 DELETE 리소스삭제 HEAD 헤더 취득 OPTIONS 리소스가 서포트하는 메서드 취득
  32. 32. 05 WEB URL 리소스 식별자 HTML 하이퍼미디어 포맷 HTTP 애플리케이션 컨트롤 HTML의 링크는 URI를 이용한다. HTTP는 URI로 조직대상을 지정한다. HTML는 HTTP로 전송된다.
  33. 33. HTTP Hyper Text Transfer Protocol URI Uniform Resource Identifier HTML Hyper Text Markup Language
  34. 34. Hyper Media Hyper Link로 연결된 텍스트/이미지/음성 영상 정보의 연결 분산시스템 웹은 전 세계에 배치된 서버에 모든 브라우저가 접속하는 분산 시스템

×