웹을 지원하는 기술

2785 단어 restHTTP

웹을 지원하는 기술



이 책을 읽은 목적



업무로 PUT 메소드에 대해 조사하고 있어, 구그한 것만으로는 납득할 수 있는 정보가 없었기 때문에
이 책을 구입하고 읽었습니다.

그래서 알고 싶었던 정보를 중심으로 기재하려고 합니다.

서두의 좋은 말



처음에 좋은 것을 쓰고 있습니다.

단순함은 궁극의 세련이다.
----- Leonardo da Vinci

웹의 특징을 한마디로 표현하면 단순함

제1부 Web개론



웹을 지원하는 기술은 HTTP, URI, HTML





REST



아키텍처 스타일



스타일에 맞게 REST 구성




스타일
설명


클라이언트/서버
사용자 인터페이스와 처리를 분리

스테이트리스 서버
서버 측에서 애플리케이션 상태가 없음

캐시
클라이언트와 서버의 통신 횟수와 양을 줄입니다.

통합 인터페이스
인터페이스 고정

계층화 시스템
시스템을 계층으로 분리

코드 온 디맨드
프로그램을 클라이언트에 다운로드하여 실행


제2부 URI


http://blog.example.jp/entries/1


품목
내용


URI
http

체계
blog.example.jp

경로
/entries/1

http://blog.example.jp:8000/search?q=test&debug=true#n10


품목
내용


URI 체계
http

사용자 정보
yohei:pass

호스트 이름
blog.example.jp

포트 번호
8000

경로
/search

쿼리 매개변수
q=test&debug=true

URI 단편
#n10


제3부 HTTP



HTTP는 TCP/IP 기반 프로토콜
RFC2616

HTTP 기본




계층
프로토콜


애플리케이션 계층
HTTP, NTP, SSH, SMTP, DNS

전송 계층
UDP, TCP

인터넷 계층
IP

네트워크 인터페이스 계층
이더넷


HTTP 메소드




방법
의미


GET
리소스 획득

POST
하위 리소스 작성, 리소스에 데이터 추가, 기타 처리

PUT
리소스 업데이트, 리소스 생성

DELETE
리소스 삭제

HEAD
리소스 헤더 (메타 데이터) 검색

OPTIONS
리소스가 지원하는 메서드 검색

TRACE
자신에게 요청 메시지를 반환하는 (루프백) 테스트

CONNECT
프록시 동작을 터널 연결로 변경


CRUD



GET, POST, PUT, DELETE로 CRUD


CRUD 이름
의미
방법


Create
만들기
POST/PUT

읽기
로딩
GET

업데이트
업데이트
PUT

Delete
삭제
DELETE


PUT



리소스 업데이트

리소스 만들기

POST와 PUT의 구분

복수의 리소스를 작성하는 경우는 POST, 1개의 리소스를 작성하는 경우는 PUT라고 하는 것을 기억하고 있습니다.

제4부 하이퍼 미디어 포맷



제5부 웹 서비스의 설계



조사 결과



Ajax 통신시 PUT 메소드를 사용하고 있으며, PUT 메소드는 취약성이 있으므로 POST로 다시 구현하십시오.
이 책에서 HTTP 방법을 공부했습니다.

그러나 원인은 HTTP가 아니라 WebDAV를 통해 외부에서 액세스되었을 때 HTTP에서 상속하는 PUT 메서드를 사용합니다.
리소스를 갱신하고, OS를 탈취될 가능성이 있다든가 없다고 하는 취약성답게・・・

좋은 웹페이지 즐겨찾기