728x90
# URI 구조
Scheme
- 프로토콜 명시
- 웹 : HTTP, HTTPS
도메인 ;Domain
- 통신할 서버의 도메인 명 | IP주소
포트 ;Port
- 통신을 위해 연결된 서버 호스트의 특정 프로세스에 접근하기 위해 필요한 번호
경로 ;Path
- 리소스 경로
- 계층적 구조
- /(슬래시) 뒤에 있는거
파라미터 ;Parameter
- ==쿼리 스트링
- 웹 서버로 보내는 keu-value 형태의 문자열 데이터
- ? 뒤에 있는거
- &기호로 구분 -> 여러 개 존재 가능
Fragment == 해시태그(;Hashtag) == 앵커(;Ancher)
- 메인 리소스 내에 존재하는 서브 리소스에 스크롤 없이 바로 접근 시 사용
- 서버에 전송하는 정보 x
# 요청&응답
1. 요청 메소드
GET : 받을랭
- 특정 리소스의 표시를 요청.
- 데이터를 받기만 함
POST : 로그인 할랭 / 만들랭
- 특정 리소스에 엔티티 제출 시 사용
- 서버 상태 변화 | 부작용 일으킴
- 본문 내용(body)에 대한 명시가 필요
- +) POST요처을 URI의 파라미터를 이용해 전송하면 보안상의 문제가 발생한다.
PUT/PATCH : 바꿀랭
- 목적 리소스의 모든 현재 표시를 요청 Payload로 변경
- 리소스 부분만 수정하는데 사용
- 본문 내용(body)에 대한 명시가 필요
DELETE : 지울랭
- 특정 리소스 삭제
더 많은 요청 메소드 정보: https://developer.mozilla.org/ko/docs/Web/HTTP/Methods
2. 응답
상태코드 | 상태 | 의미 | |
2xx : ㅇㅋ 굳. 성공 응답 |
200 | ㅇㅋ | 요청이 성공적으로 됨 성공의 의미는 HTTP 메소드에 따라 달라짐 |
201 | Created | 요청 성공 새로운 리소스 생성 POST | 일부 PUT 요청에 응답 |
|
3xx : 다른데로 바꿔드림 리다이렉션 |
301 | Moved Permanently | 요청한 리소스의 URI가 변경되었음 새로운 URI가 주어질 것 아마듀? |
4xx : 아 님 왜 이상하게 보내셈 ; 클라이언트 에러 응답 |
400 | Bad Request | 잘못된 문법으로 인해 서버가 요청을 이해할 수 없음 |
401 | Unauthorized | 비인증 | |
403 | Forbidden | 콘텐츠에 접근할 권리를 가지고 있지 않음 서버는 클라이언트가 누구인지 알고 있음. |
|
404 | Not Found | 요청받은 리소스를 찾을 수 없음 | |
405 | Method Not Allowed | 요청한 메소드를 서버에서 알고 있지만 제거되어 사용할 수 없음. | |
5xx : ㄱㄷㄱㄷ 나 이상함 ㄱㄷ ; 서버 에러 응답 |
500 | Internal Server Er | 서버가 처리 방법을 모르는 상황 |
502 | Bad Gateway | 서버가 요청을 처리하는데 필요한 응답을 얻기 위해 게이트웨이로 작업하는 동안 잘못된 응답을 수신 | |
503 | Service Unvailable | 서버가 요청을 처리할 준비가 되지 않음. |
더 많은 상태 코드 :
https://developer.mozilla.org/ko/docs/Web/HTTP/Status
# HTTP; Hypertext Transfer Protocol
- 클라이언트 서버 구조
- 클라이언트는 서버에 요청을 보낸 후 대기 / 서버는 요청 결과를 만들어서 응답
- 무상태 ; Stateless
# Stateful & Stateless
Stateful :서버가 클라이언트의 이전 상태 보존
A: 튀김소보로 6개입 한 박스에 얼마에요?
B: 10000원입니다
A: 2세트 주세요
B : 2만원 입니다. 결제 어떻게 하실건가요?(튀김소보로 구매 수량 유지)
A: 카드로 할게요
B: 결제 완료 되었습니다.(튀김소보로 주문 수량 , 결제 수단 상태 유지)
Stateless : 서버가 클라이언트의 이전 상태 미보존 ; 문맥이 먼데 ㅇㅅㅇ? 모르눈뒝 ?
A: 튀김소보로 6개입 한 박스에 얼마에요?
B: 10000원입니다
A: 2세트 주세요
B : 머를여?? ㅇㅅㅇ???
A: 튀김소보로요...ㅇ ㅡ ㅇ
B: 몇 개 구매하시는 지, 결제수단이 어떻데 되는지 한 번에 얘기 해 주세요!
# 상태 유지 방법
1. 쿠키
- 만료 기간이 있는 클라이언트 단에 저장하는 작은 텍스트 파일
- 서버와 클라이언트가 주고 받은 내역을 기억하고 불러올 수 있는 역할 수행
2. 웹 스토리지
- 로컬스토리지
- 데이터 영구 저장 가능
- 서버세션
- 브라우저 탭/윈도우가 닫히면 스토리지 초기화
728x90
'😒 저 저 저 개념없는 나 > 🌐 네트워크' 카테고리의 다른 글
[네트워크] SSH (0) | 2024.11.22 |
---|---|
[네트워크] HTTPS | SSL | TLS (1) | 2024.11.22 |
[네트워크] NAT; Network Address Translation (0) | 2024.11.19 |
[네트워크] 네트워크 라우팅 | 라우터 | 스위치 (0) | 2024.11.19 |
[네트워크] 서브넷, 서브네팅 | Subnet, Subnneting (0) | 2024.11.19 |