postman에서 http test를 하다보면 body type을 선택할 수 있습니다
이는 Header의 Content-Type과 연결된 것으로, 주로 사용하는 x-www-form-urlencoded와 json의 차이를 간단하게 살펴보려 합니다
x-www-form-urlencoded는 application/x-www-form-urlencoded
를, raw/json은 application/json
을 의미합니다
html form submit에서 주로 사용하는 타입이며, 기본적인 Content-Type으로 불립니다
<form>
이 파일이나 이미지를 전송할 때 주로 사용합니다해당 타입의 인코딩 규칙은 다음과 같습니다 👀
&
은 입력을 분할합니다=
가 포함된 경우 name=value
를 나타냅니다+
를 나타냅니다인코딩이 필요하기 때문에 크기가 큰 데이터는 해당 타입으로 보내기 적합하지 않습니다
?name=Binary+Yun&age=25
따라서 해당 타입으로 요청을 보내면 url 뒤에 위와 같은 형태로 전송됩니다
json type으로 사용하는 Content-Type입니다
json의 특징과 동일하게, 배열 및 복잡한 데이터 구조를 간결하게 표현하기에 좋습니다
{"name": "Binary Yun", "age": 25}
해당 타입으로 요청을 보내면 json format 그대로 위와 같은 형태로 전송됩니다
- https://stackoverflow.com/questions/9870523/what-are-the-differences-between-application-json-and-application-x-www-form-url
- https://www.baeldung.com/postman-form-data-raw-x-www-form-urlencoded
- https://url.spec.whatwg.org/#application/x-www-form-urlencoded
- https://www.w3.org/Protocols/rfc1341/4_Content-Type.html