HTTP 메서드API 만드는 과정(1) 요구사항 확인(2) API URI 설계(3) 리소스와 행위를 분리 가장 중요한 건 리소스를 식별하는 것이다.요구사항이 '회원 정보 관리 API를 만들기' 라면, '회원 등록하기'에서의 리소스는 '등록'이 아닌 '회원'이라는 것!행위 → 조회, 등록, 삭제, 변경 (GET, POST, PUT, PATCH, DELETE) HTTP 메서드 종류GET : 리소스 조회POST : 요청 데이터 처리, 주로 등록에 사용PUT : 리소스를 대체, 해당 리소스가 없으면 생성PATCH : 리소스 부분 변경DELETE : 리소스 삭제아래는 안쓰는 메서드HEAD : GET과 동일하지만 메시지 부분을 제외하고, 상태 줄과 헤더만 반환OPTIONS : 대상 리소스에 대한 통신 가능 옵션..
HyperText Transfer Protocol- HTML, TEXT 뿐만 아니라 이미지, 음성, 영상, 파일, JSON, XML(API) 모두 전송 가능- 심지어 서버간에 데이터를 주고 받을 때도 사용 HTTP 역사- HTTP/0.9 1991년 : GET 메서드만 지원, HTTP 헤더 없음- HTTP/1.0 1996년 : 메서드, 헤더 추가됨- HTTP/1.1 1997년 : 모든 기능, 가장 많이 사용RFC2016(1197) → RFC2616(1999) → RFC7230~7235(2014)- HTTP/2 2015년 : 성능 개선- HTTP/3 진행 중 : TCP 대신 UDP 사용, 성능 개선 HTTP 기반 프로토콜- TCP : HTTP/1.1, HTTP/2- UDP : HTTP/3- 현재 1.1을..
웹 브라우저 요청 흐름(1) https://www.google.com/search?q=hello&hl=ko 검색scheme://[userinfo@]host[:port][/path][?query][#fragment]schemeuserinfohost port path query fragmenthttps www.google.com(https→443)/searchq=hello&hl=ko https://www.google.com/search?q=hello&hl=ko (2) host를 DNS에 조회하여 IP 알아낸다*DNS = 도메인 네임 시스템 ( 전화번호부 느낌 )도메인 명을 IP주소로 변환 ( google.com → 200.200.200.2 ) (3) port는 https니까 443 (4) HTTP 요청 ..
인터넷 네트워크 (http를 위한 기본학습)- 클라이언트와 서버 그 사이엔 복잡한 인터넷이 있다.- 그 규칙을 IP라고 함IP (인터넷 프로토콜)- 지정한 IP 주소에 데이터를 전달- 패킷이라는 통신 단위로 데이터를 전달 IP 패킷 정보- (출발IP, 목적IP, 기타 ...) 으로 구성되어 있음- 근데 이 정보만으로는 한계가 있다. IP 프로토콜의 한계- 비연결성 : 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷을 전송- 비신뢰성 : 중간에 패킷이 사라지면? 패킷이 순서대로 안오면?- 프로그램 구분 : 같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상이면??- 이런것들을 해결해주는 것이 TCP, UDPTCP (전송 제어 프로토콜)- 연결지향 : TCP 3 way handshake (가..
웹팩 - 프론트엔드 프레임워크에서 가장 많이 사용되는 모듈 번들러(Module Bundler) *** 빌드=번들링=변환 다 같은 말임 모듈 - 프로그래밍 관점에서 특정 기능을 갖는 작은 코드 단위 모듈 번들링 - 웹 애플리케이션 몇백개 자원들을 하나의 파일로 압축해주는 동작 - 파일들간의 관계를 모두 파악함 - 웹 애플리케이션을 구성하는 자원(HTML, CSS, Javscript, Images 등)을 모두 각각의 모듈로 보고 이를 조합해서 병합하는 도구 웹팩의 역할 - 웹팩은 파일 단위의 자바스크립트 모듈을 변수로 관리가 가능!! ( 예전엔 AMD, Common.js와 같은 라이브러리 사용했다고 한다...) - 웹개발 작업 자동화 도구 + 모듈 관리 ( 예를 들면 ... HTML, CSS, JS 압축 /..