๐Ÿ“–
Aaron's TECH BOOK
  • Intro
    • About me
  • Lecture
    • Kubernetes
      • Begin Kubernetes
    • Kafka
      • Begin Kafka
    • Kotlin
      • TDD, Clean Code Preview
      • woowa Kotlin
    • Java
      • Multithread Concurrency
      • The Java
    • Toby
      • Toby Spring 6
      • Toby Spring Boot
    • MSA
      • 01.Micro Service
      • 02.DDD ์„ค๊ณ„
      • 03.DDD ๊ตฌํ˜„
      • 04.EDA ๊ตฌํ˜„
    • Spring Boot
    • Spring Batch
    • Spring Core Advanced
    • Spring DB Part II
    • Spring DB Part I
    • JPA API and Performance Optimization
    • JPA Web Application
    • JPA Programming Basic
    • Spring MVC Part 2
      • 01.Thymeleaf
      • 02.ETC
      • 03.Validation
      • 04.Login
      • 05.Exception
    • Spring MVC Part 1
      • 01.Servlet
      • 02.MVC
    • Http
      • 01.Basic
      • 02.Method
      • 03.Header
    • Spring Core
    • Study
      • Concurrency issues
      • First Come First Served
      • Performance Test
      • TDD
      • IntelliJ
  • Book
    • Kafka Streams in Action
      • 01.์นดํ”„์นด ์ŠคํŠธ๋ฆผ์ฆˆ
      • 02.์นดํ”„์นด ์ŠคํŠธ๋ฆผ์ฆˆ ๊ฐœ๋ฐœ
      • 03.์นดํ”„์นด ์ŠคํŠธ๋ฆผ์ฆˆ ๊ด€๋ฆฌ
    • Effective Kotlin
      • 01.์ข‹์€ ์ฝ”๋“œ
      • 02.์ฝ”๋“œ ์„ค๊ณ„
      • 03.ํšจ์œจ์„ฑ
    • ์ด๋ฒคํŠธ ์†Œ์‹ฑ๊ณผ MSA
      • 01.๋„๋ฉ”์ธ ์ฃผ๋„ ์„ค๊ณ„
      • 02.๊ฐ์ฒด์ง€ํ–ฅ ์„ค๊ณ„ ์›์น™
      • 03-04.์ด๋ฒคํŠธ ์†Œ์‹ฑ
      • 05.๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ํ˜‘์—…
      • 06.๊ฒฐ๊ณผ์  ์ผ๊ด€์„ฑ
      • 07.CQRS
      • 08.UI
      • 09.ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ
    • ๋ชฝ๊ณ DB ์™„๋ฒฝ ๊ฐ€์ด๋“œ
      • I. ๋ชฝ๊ณ DB ์‹œ์ž‘
      • II. ๋ชฝ๊ณ DB ๊ฐœ๋ฐœ
    • Kotlin Cookbook
      • ์ฝ”ํ‹€๋ฆฐ ๊ธฐ์ดˆ
      • ์ฝ”ํ‹€๋ฆฐ ๊ธฐ๋Šฅ
      • ETC
    • Kotlin in Action
      • ํ•จ์ˆ˜/ํด๋ž˜์Šค/๊ฐ์ฒด/์ธํ„ฐํŽ˜์ด์Šค
      • ๋žŒ๋‹ค์™€ ํƒ€์ž…
      • ์˜ค๋ฒ„๋กœ๋”ฉ๊ณผ ๊ณ ์ฐจ ํ•จ์ˆ˜
      • ์ œ๋„ค๋ฆญ์Šค, ์• ๋…ธํ…Œ์ด์…˜, ๋ฆฌํ”Œ๋ ‰์…˜
    • Kent Beck Tidy First?
    • ๋Œ€๊ทœ๋ชจ ์‹œ์Šคํ…œ ์„ค๊ณ„ ๊ธฐ์ดˆ
      • 01.์‚ฌ์šฉ์ž ์ˆ˜์— ๋”ฐ๋ฅธ ๊ทœ๋ชจ ํ™•์žฅ์„ฑ
      • 02.๊ฐœ๋žต์ ์ธ ๊ทœ๋ชจ ์ถ”์ •
      • 03.์‹œ์Šคํ…œ ์„ค๊ณ„ ๊ณต๋žต๋ฒ•
      • 04.์ฒ˜๋ฆฌ์œจ ์ œํ•œ ์žฅ์น˜ ์„ค๊ณ„
      • 05.์•ˆ์ • ํ•ด์‹œ ์„ค๊ณ„
      • 06.ํ‚ค-๊ฐ’ ์ €์žฅ์†Œ ์„ค๊ณ„
      • 07.์œ ์ผ ID ์ƒ์„ฑ๊ธฐ ์„ค๊ณ„
      • 08.URL ๋‹จ์ถ•๊ธฐ ์„ค๊ณ„
      • 09.์›น ํฌ๋กค๋Ÿฌ ์„ค๊ณ„
      • 10.์•Œ๋ฆผ ์‹œ์Šคํ…œ ์„ค๊ณ„
      • 11.๋‰ด์Šค ํ”ผ๋“œ ์‹œ์Šคํ…œ ์„ค๊ณ„
      • 12.์ฑ„ํŒ… ์‹œ์Šคํ…œ ์„ค๊ณ„
      • 13.๊ฒ€์ƒ‰์–ด ์ž๋™์™„์„ฑ ์‹œ์Šคํ…œ
      • 14.์œ ํŠœ๋ธŒ ์„ค๊ณ„
      • 15.๊ตฌ๊ธ€ ๋“œ๋ผ์ด๋ธŒ ์„ค๊ณ„
      • 16.๋ฐฐ์›€์€ ๊ณ„์†๋œ๋‹ค
    • ์‹ค์šฉ์ฃผ์˜ ํ”„๋กœ๊ทธ๋ž˜๋จธ๐Ÿ“–
    • GoF Design Patterns
    • ๋„๋ฉ”์ธ ์ฃผ๋„ ๊ฐœ๋ฐœ ์‹œ์ž‘ํ•˜๊ธฐ
      • 01.๋„๋ฉ”์ธ ๋ชจ๋ธ ์‹œ์ž‘ํ•˜๊ธฐ
      • 02.์•„ํ‚คํ…์ฒ˜ ๊ฐœ์š”
      • 03.์• ๊ทธ๋ฆฌ๊ฑฐํŠธ
      • 04.๋ฆฌํฌ์ง€ํ„ฐ๋ฆฌ์™€ ๋ชจ๋ธ ๊ตฌํ˜„
      • 05.Spring Data JPA๋ฅผ ์ด์šฉํ•œ ์กฐํšŒ ๊ธฐ๋Šฅ
      • 06.์‘์šฉ ์„œ๋น„์Šค์™€ ํ‘œํ˜„ ์˜์—ญ
      • 07.๋„๋ฉ”์ธ ์„œ๋น„์Šค
      • 08.์• ๊ทธ๋ฆฌ๊ฑฐํŠธ ํŠธ๋žœ์žญ์…˜ ๊ด€๋ฆฌ
      • 09.๋„๋ฉ”์ธ ๋ชจ๋ธ๊ณผ ๋ฐ”์šด๋””๋“œ ์ปจํ…์ŠคํŠธ
      • 10.์ด๋ฒคํŠธ
      • 11.CQRS
    • Effective Java 3/E
      • ๊ฐ์ฒด, ๊ณตํ†ต ๋ฉ”์„œ๋“œ
      • ํด๋ž˜์Šค, ์ธํ„ฐํŽ˜์ด์Šค, ์ œ๋„ค๋ฆญ
    • ์†Œํ”„ํŠธ์›จ์–ด ์žฅ์ธ
    • ํ•จ๊ป˜ ์ž๋ผ๊ธฐ
    • Modern Java In Action
      • 01.๊ธฐ์ดˆ
      • 02.ํ•จ์ˆ˜ํ˜• ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ
      • 03.์ŠคํŠธ๋ฆผ๊ณผ ๋žŒ๋‹ค๋ฅผ ์ด์šฉํ•œ ํšจ๊ณผ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ
      • 04.๋งค์ผ ์ž๋ฐ”์™€ ํ•จ๊ป˜
    • Refactoring
      • 01.๋ฆฌํŽ™ํ„ฐ๋ง ์ฒซ ๋ฒˆ์งธ ์˜ˆ์‹œ
      • 02.๋ฆฌํŽ™ํ„ฐ๋ง ์›์น™
      • 03.์ฝ”๋“œ์—์„œ ๋‚˜๋Š” ์•…์ทจ
      • 06.๊ธฐ๋ณธ์ ์ธ ๋ฆฌํŽ™ํ„ฐ๋ง
      • 07.์บก์Аํ™”
      • 08.๊ธฐ๋Šฅ ์ด๋™
      • 09.๋ฐ์ดํ„ฐ ์กฐ์งํ™”
      • 10.์กฐ๊ฑด๋ถ€ ๋กœ์ง ๊ฐ„์†Œํ™”
      • 11.API ๋ฆฌํŒฉํ„ฐ๋ง
      • 12.์ƒ์† ๋‹ค๋ฃจ๊ธฐ
    • ๊ฐ์ฒด์ง€ํ–ฅ์˜ ์‚ฌ์‹ค๊ณผ ์˜คํ•ด
      • 01.ํ˜‘๋ ฅํ•˜๋Š” ๊ฐ์ฒด๋“ค์˜ ๊ณต๋™์ฒด
      • 02.์ด์ƒํ•œ ๋‚˜๋ผ์˜ ๊ฐ์ฒด
      • 03.ํƒ€์ž…๊ณผ ์ถ”์ƒํ™”
      • 04.์—ญํ• , ์ฑ…์ž„, ํ˜‘๋ ฅ
      • 05.์ฑ…์ž„๊ณผ ๋ฉ”์‹œ์ง€
      • 06.๊ฐ์ฒด ์ง€๋„
      • 07.ํ•จ๊ป˜ ๋ชจ์œผ๊ธฐ
      • ๋ถ€๋ก.์ถ”์ƒํ™” ๊ธฐ๋ฒ•
    • Clean Code
    • ์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ
Powered by GitBook
On this page
  • HTTP Method
  • HTTP ๋ฉ”์„œ๋“œ
  • API URI ์„ค๊ณ„
  • HTTP ๋ฉ”์„œ๋“œ์˜ ์†์„ฑ
  • HTTP ๋ฉ”์„œ๋“œ ํ™œ์šฉ
  • ํด๋ผ์ด์–ธํŠธ์—์„œ ์„œ๋ฒ„๋กœ ๋ฐ์ดํ„ฐ ์ „์†ก
  • HTTP API ์„ค๊ณ„ ์˜ˆ์‹œ
  • HTTP ์ƒํƒœ์ฝ”๋“œ
  • 2xx (Successful): ์š”์ฒญ ์ •์ƒ ์ฒ˜๋ฆฌ
  • 3xx (Redirection): ์š”์ฒญ์„ ์™„๋ฃŒ๋ฅผ ์œ„ํ•ด ์ถ”๊ฐ€ ํ–‰๋™ ํ•„์š”
  • 4xx (Client Error)
  • 5xx (Server Error)
  1. Lecture
  2. Http

02.Method

HTTP Method

HTTP ๋ฉ”์„œ๋“œ

  • GET : ๋ฆฌ์†Œ์Šค ์กฐํšŒ

  • POST : ์š”์ฒญ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ(๋“ฑ๋ก)

  • PUT : ๋ฆฌ์†Œ์Šค ๋Œ€์ฒด, ์—†์œผ๋ฉด ์ƒ์„ฑ

  • PATCH : ๋ฆฌ์†Œ์Šค ๋ถ€๋ถ„ ๋ณ€๊ฒฝ

  • DELETE : ๋ฆฌ์†Œ์Šค ์‚ญ์ œ

API URI ์„ค๊ณ„

  • ์ข‹์€ URI ์„ค๊ณ„๋Š” ๋ฆฌ์†Œ์Šค ์‹๋ณ„์ด ์ค‘์š”

    • ํšŒ์› = ๋ฆฌ์†Œ์Šค

    • ํšŒ์› ๋ชฉ๋ก ์กฐํšŒ /members

    • ํšŒ์› ์กฐํšŒ /members/{id} GET

    • ํšŒ์› ๋“ฑ๋ก /members/{id} POST

    • ํšŒ์› ์ˆ˜์ • /members/{id} PUT

    • ํšŒ์› ์‚ญ์ œ /members/{id} DELETE

  • ๋ฆฌ์†Œ์Šค(ํšŒ์›)์™€ ํ–‰์œ„(์กฐํšŒ, ๋“ฑ๋ก, ์‚ญ์ œ, ๋ณ€๊ฒฝ)๋ฅผ ๋ถ„๋ฆฌ

    • URI๋Š” ๋ฆฌ์†Œ์Šค๋งŒ ์‹๋ณ„

GET

  • ๋ฆฌ์†Œ์Šค ์กฐํšŒ

  • ์ „๋‹ฌ ๋ฐ์ดํ„ฐ๋Š” query parameter OR query string ์„ ํ†ตํ•ด ์ „๋‹ฌ

POST

  • ์ƒˆ ๋ฆฌ์†Œ์Šค ์ƒ์„ฑ(๋“ฑ๋ก)

  • ์š”์ฒญ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ

    • ํ”„๋กœ์„ธ์Šค ์ฒ˜๋ฆฌ

    • ์ปจํŠธ๋กค URI

  • massage body๋ฅผ ํ†ตํ•ด ์„œ๋ฒ„๋กœ ์š”์ฒญ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ

PUT

  • ๋ฆฌ์†Œ์Šค๊ฐ€ ์žˆ์œผ๋ฉด ๋Œ€์ฒด, ์—†์œผ๋ฉด ์ƒ์„ฑ (๋ฎ์–ด์“ฐ๊ธฐ)

  • ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋ฆฌ์†Œ์Šค ์œ„์น˜๋ฅผ ์•Œ๊ณ  URI ์ง€์ • (POST์™€์˜ ์ฐจ์ด)

    • PUT /members/100 HTTP/1.1

    • POST /members HTTP/1.1

PATCH

  • ๋ฆฌ์†Œ์Šค ๋ถ€๋ถ„ ๋ณ€๊ฒฝ

    • PATCH /members/100 HTTP/1.1

DELETE

  • ๋ฆฌ์†Œ์Šค ์ œ๊ฑฐ

    • DELETE /members/100 HTTP/1.1

HTTP ๋ฉ”์„œ๋“œ์˜ ์†์„ฑ

  • ์•ˆ์ „(Safe)

    • ๋ฆฌ์†Œ์Šค ๋ณ€๊ฒฝ์ด ์ผ์–ด๋‚˜์ง€ ์•Š๋Š” ๊ฒƒ (ex. GET, HEAD ..)

  • ๋ฉฑ๋“ฑ(Idempotent)

    • ๋ช‡ ๋ฒˆ์„ ํ˜ธ์ถœํ•˜๋“  ๊ฒฐ๊ณผ๋Š” ๊ฐ™๋‹ค (GET, PUT, DELETE)

    • ์ž๋™ ๋ณต๊ตฌ ๋ฉ”์ปค๋‹ˆ์ฆ˜์—์„œ ํ™œ์šฉ

  • ์บ์‹œ๊ฐ€๋Šฅ(Cacheable)

    • ์‘๋‹ต ๊ฒฐ๊ณผ ๋ฆฌ์†Œ์Šค๋ฅผ ์บ์‹œํ•ด์„œ ์‚ฌ์šฉ (GET, HEAD ์ •๋„๋งŒ ์บ์‹œ๋กœ ์‚ฌ์šฉ)


HTTP ๋ฉ”์„œ๋“œ ํ™œ์šฉ

ํด๋ผ์ด์–ธํŠธ์—์„œ ์„œ๋ฒ„๋กœ ๋ฐ์ดํ„ฐ ์ „์†ก

  • Query Parameter๋ฅผ ํ†ตํ•œ ๋ฐ์ดํ„ฐ ์ „์†ก

    • GET

    • ex) ์ •๋ ฌ ํ•„ํ„ฐ(๊ฒ€์ƒ‰)

  • Message Body๋ฅผ ํ†ตํ•œ ๋ฐ์ดํ„ฐ ์ „์†ก

    • POST, PUT, PATCH

    • ex) ํšŒ์›๊ฐ€์ž…, ์ƒํ’ˆ์ฃผ๋ฌธ, ๋ฆฌ์†Œ์Šค ๋“ฑ๋ก, ๋ฆฌ์†Œ์Šค ๋ณ€๊ฒฝ

์ •์  ๋ฐ์ดํ„ฐ ์กฐํšŒ

  • GET

  • ์ด๋ฏธ์ง€, ์ •์  ํ…์ŠคํŠธ ๋ฌธ์„œ

  • Query Parameter ์—†์ด ๋ฆฌ์†Œ์Šค ๊ฒฝ๋กœ๋กœ ๋‹จ์ˆœ ์กฐํšŒ

๋™์  ๋ฐ์ดํ„ฐ ์กฐํšŒ

  • GET

  • ๊ฒŒ์‹œ๋ฌผ ๊ฒ€์ƒ‰, ์ •๋ ฌ, ํ•„ํ„ฐ

  • Query Parameter ์‚ฌ์šฉ

HTML FORM์„ ํ†ตํ•œ ๋ฐ์ดํ„ฐ ์ „์†ก

  • POST

  • ๋“ฑ๋ก, ๋ณ€๊ฒฝ

  • Content-Type

    • application/x-www-form-urlencoded

      • form ๋‚ด์šฉ์„ Message Body๋ฅผ ํ†ตํ•ด ์ „์†ก

      • ์ „์†ก ๋ฐ์ดํ„ฐ๋ฅผ url encoding ์ฒ˜๋ฆฌ

    • multipart/form-data

      • ํŒŒ์ผ ์—…๋กœ๋“œ ๊ฐ™์€ ๋ฐ”์ด๋„ˆ๋ฆฌ ๋ฐ์ดํ„ฐ ์ „์†ก ์‹œ ์‚ฌ์šฉ

      • ๋‹ค๋ฅธ ์ข…๋ฅ˜์˜ ์—ฌ๋Ÿฌ ํŒŒ์ผ๊ณผ ํผ ๋‚ด์šฉ์„ ํ•จ๊ป˜ ์ „์†ก ๊ฐ€๋Šฅ

  • HTML Form ์ „์†ก์€ GET, POST๋งŒ ์ง€์›

HTTP API๋ฅผ ํ†ตํ•œ ๋ฐ์ดํ„ฐ ์ „์†ก

  • Server to Server ํ†ต์‹ 

  • ๋ชจ๋ฐ”์ผ ์•ฑ ํด๋ผ์ด์–ธํŠธ

  • Ajax ์›น ํด๋ผ์ด์–ธํŠธ

  • GET -> Query Parameter๋กœ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ ํ›„ ์กฐํšŒ

  • POST, PUT, PATCH -> Message Body๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ ์ „์†ก

  • Content-Type : application/json

HTTP API ์„ค๊ณ„ ์˜ˆ์‹œ

POST ๊ธฐ๋ฐ˜ ๋“ฑ๋ก

์„œ๋ฒ„๊ฐ€ ๊ด€๋ฆฌํ•˜๋Š” ๋ฆฌ์†Œ์Šค ๋””๋ ‰ํ† ๋ฆฌ (Collection)

  • ํšŒ์› ๋ชฉ๋ก /members -> GET

  • ํšŒ์› ๋“ฑ๋ก /members -> POST

  • ํšŒ์› ์กฐํšŒ /members/{id} -> GET

  • ํšŒ์› ์ˆ˜์ • /members/{id} -> PATCH, PUT, POST

  • ํšŒ์› ์‚ญ์ œ /members/{id} -> DELETE

PUT ๊ธฐ๋ฐ˜ ๋“ฑ๋ก

ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๊ด€๋ฆฌํ•˜๋Š” ๋ฆฌ์†Œ์Šค ์ €์žฅ์†Œ (Store)

  • ํŒŒ์ผ ๋ชฉ๋ก /files -> GET

  • ํŒŒ์ผ ์กฐํšŒ /files/{filename} -> GET

  • ํŒŒ์ผ ๋“ฑ๋ก /files/{filename} -> PUT

  • ํŒŒ์ผ ์‚ญ์ œ /files/{filename} -> DELETE

  • ํŒŒ์ผ ๋Œ€๋Ÿ‰ ๋“ฑ๋ก /files -> POST

HTML FORM ์‚ฌ์šฉ

HTML FORM์€ GET, POST๋งŒ ์ง€์›ํ•˜๋ฏ€๋กœ Control URI ์‚ฌ์šฉ

  • ํšŒ์› ๋ชฉ๋ก /members -> GET

  • ํšŒ์› ๋“ฑ๋ก ํผ /members/new -> GET

  • ํšŒ์› ๋“ฑ๋ก /members/new -> POST

  • ํšŒ์› ์กฐํšŒ /members/{id} -> GET

  • ํšŒ์› ์ˆ˜์ • ํผ /members/{id}/edit -> GET

  • ํšŒ์› ์ˆ˜์ • /members/{id}/edit -> POST

  • ํšŒ์› ์‚ญ์ œ /members/{id}/delete -> POST

  • ์ปฌ๋ ‰์…˜๊ณผ ๋ฌธ์„œ๋กœ ์ตœ๋Œ€ํ•œ ํ•ด๊ฒฐํ•˜๊ณ  ๊ทธ ํ›„์— ์ปจํŠธ๋กค URI ์‚ฌ์šฉ


HTTP ์ƒํƒœ์ฝ”๋“œ

2xx (Successful): ์š”์ฒญ ์ •์ƒ ์ฒ˜๋ฆฌ

Code

  • 200 OK

  • 201 Created (POST)

  • 202 Accepted (batch)

  • 204 No Content

3xx (Redirection): ์š”์ฒญ์„ ์™„๋ฃŒ๋ฅผ ์œ„ํ•ด ์ถ”๊ฐ€ ํ–‰๋™ ํ•„์š”

Redirect

  • ์›น ๋ธŒ๋ผ์šฐ์ €๋Š” 3xx ์‘๋‹ต์˜ ๊ฒฐ๊ณผ์— Location ํ—ค๋”๊ฐ€ ์žˆ์œผ๋ฉด, Location ์œ„์น˜๋กœ ์ž๋™ ์ด๋™

  • ์˜๊ตฌ ๋ฆฌ๋‹ค์ด๋ ‰์…˜ : ํŠน์ • ๋ฆฌ์†Œ์Šค์˜ URI๊ฐ€ ์˜๊ตฌ์ ์œผ๋กœ ์ด๋™ (301, 308)

  • ์ผ์‹œ ๋ฆฌ๋‹ค์ด๋ ‰์…˜ : ์ผ์‹œ์ ์ธ ๋ณ€๊ฒฝ (302, 303, 307)

    • PRG(Post/Redirect/Get)์— ์‚ฌ์šฉ / ์ƒˆ๋กœ๊ณ ์นจ ์ค‘๋ณต ์ฃผ๋ฌธ ๋ฐฉ์ง€

  • ํŠน์ˆ˜ ๋ฆฌ๋‹ค์ด๋ ‰์…˜ : ๊ฒฐ๊ณผ ๋Œ€์‹  ์บ์‹œ ์‚ฌ์šฉ

Code

  • 300 Multiple Choices (X)

  • 301 Moved Permanently

    • ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ ์‹œ Get์œผ๋กœ ๋ณ€ํ•˜๊ณ , ๋ณธ๋ฌธ ์†์‹ค

  • 302 Found

    • ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ ์‹œ GET์œผ๋กœ ๋ณ€ํ•˜๊ณ , ๋ณธ๋ฌธ ์ œ๊ฑฐ

  • 303 See Other

    • ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ ์‹œ GET์œผ๋กœ ๋ณ€๊ฒฝ

  • 304 Not Modified

    • ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ๋ฆฌ์†Œ์Šค๊ฐ€ ์ˆ˜์ •๋˜์ง€ ์•Š์•˜์Œ์„ ์•Œ๋ ค์คŒ (์บ์‹œ ์žฌ์‚ฌ์šฉ)

  • 307 Temporary Redirect

    • ๋ฆฌ๋‹ค์ด๋ ‰ํŠธ ์‹œ ๋ฉ”์„œ๋“œ์™€ ๋ณธ๋ฌธ ์œ ์ง€

  • 308 Permanent Redirect

    • ๋ฆฌ๋‹ค์ด๋ ŒํŠธ ์‹œ POST, ๋ณธ๋ฌธ ์œ ์ง€

4xx (Client Error)

  • ์˜ค๋ฅ˜์˜ ์›์ธ์€ ํด๋ผ์ด์–ธํŠธ

Code

  • 400 Bad Request

    • ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ž˜๋ชป๋œ ์š”์ฒญ์„ ํ•ด์„œ ์„œ๋ฒ„๊ฐ€ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์—†์Œ

  • 401 Unauthorized

    • ํด๋ผ์ด์–ธํŠธ๊ฐ€ ํ•ด๋‹น ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ์ธ์ฆ์ด ํ•„์š”

    • ์ธ์ฆ(Authentication): ๋กœ๊ทธ์ธ

    • ์ธ๊ฐ€(Authorization): ๊ถŒํ•œ

  • 403 Forbidden

    • ์„œ๋ฒ„๊ฐ€ ์š”์ฒญ์„ ์ดํ•ดํ–ˆ์ง€๋งŒ ์Šน์ธ์„ ๊ฑฐ๋ถ€ (์ ‘๊ทผ ๊ถŒํ•œ ์ œํ•œ)

  • 404 Not Found

    • ์š”์ฒญ ๋ฆฌ์†Œ์Šค๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†์Œ

5xx (Server Error)

  • ์„œ๋ฒ„ ๋ฌธ์ œ๋กœ ์˜ค๋ฅ˜ ๋ฐœ์ƒ

Code

  • 500 Internal Server Error

    • ์„œ๋ฒ„ ๋‚ด๋ถ€ ๋ฌธ์ œ๋กœ ์˜ค๋ฅ˜ ๋ฐœ์ƒ (์• ๋งคํ•˜๋ฉด 500)

  • 503 Service Unavailable

    • ์„œ๋น„์Šค ์ด์šฉ ๋ถˆ๊ฐ€

Last updated 1 year ago

HTTP ์†์„ฑ
REST Resource Naming Guide