HTTP 구성(요청/응답)


💡 HTTPIE

brew install httpie

iterms에서 요청과 응답을 눈으로 확인해보고 싶어서 사용한 모듈.

curl 보다 사용하기 쉽다는 특징이 있다고 한다.



💡 HTTP Request(요청)

이번에 flask_restx로 만든 로그인 기능으로 요청과 응답을 제대로 정리해봤다.

HTTP Request 메세지는 3가지로 구분된다.

  • Start Line
  • headers
  • body


1. Start Line

HTTP Method / Request Target / HTTP Version 순이다.

POST /todo/auth/login HTTP/1.1


2. Headers

Accept: application/json, */*;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Content-Length: 49
Content-Type: application/json
Host: 192.168.35.137:9172
User-Agent: HTTPie/2.6.0


3. Body

보통 GET요청은 Body가 없다. 아래는 POST요청.

{
    "password": "gilbert",
    "user_id": "gilbert9172"
}


💡 HTTP Response(응답)

Response 또한 3가지로 구분 되어있다.

1. Start Line

HTTP Version / Status Code / Status Text 순이다.

HTTP/1.0 200 OK


2. Headers

Access-Control-Allow-Origin: *
Content-Length: 230
Content-Type: application/json
Date: Sat, 25 Dec 2021 12:11:57 GMT
Server: Werkzeug/2.0.2 Python/3.8.12


3. Body

{
    "code": 200,
    "message": "로그인 성공",
    "response": {
        "token": "생략"
    }
}


📚 Reference