application/json과 application/x-www-form-urlencoded의 차이점은 무엇입니까?
와의 차이는 무엇입니까?
부탁한다.ContentType = "application/json; charset=utf-8";
그리고.
webRequest.ContentType = "application/x-www-form-urlencoded";
첫 번째 케이스는 다음과 같이 JSON 데이터를 게시하고 있음을 웹 서버에 알리는 것입니다.
{"Name": "John Smith", "Age": 23}
두 번째 경우는 URL 내의 파라미터를 부호화하는 것을 웹 서버에 통지하는 것입니다.
Name=John+Smith&Age=23
webRequest.ContentType = "application/x-www-form-urlencoded";
응용 프로그램/x-www-form-urlencoded의 이름은 어디서 유래한 것입니까?
HTTP GET 요구를 송신하는 경우 다음과 같이 쿼리 파라미터를 사용할 수 있습니다.
http://example.com/path/to/page?name=ferret&color=표시필드의 내용은 쿼리 문자열로 인코딩됩니다.그
application/x-www-form- urlencoded이름은 이전 url 쿼리 파라미터에서 가져온 것이지만 쿼리 파라미터는 url이 아닌 요청 본문에 있습니다.전체 양식 데이터는 긴 조회 문자열로 전송됩니다.쿼리 문자열에는 & 문자로 구분된 이름-값 쌍이 포함됩니다.
예: field1=value1&field2=value2
단순 요청일 수 있습니다. 비행 전 점검을 트리거하지 마십시오.
단순 요청에는 몇 가지 속성이 있어야 합니다.자세한 내용은 여기를 참조해 주세요.그 중 하나는 단순한 요청의 Content-Type 헤더에 허용되는 값이 3개뿐이라는 것입니다.
- application/x-www-form-urlencoded
- 멀티파트/폼 데이터
- 텍스트/메시지
3. 거의 플랫 파라미터 트리의 경우 application/x-www-form-urlencoded가 시행 및 테스트됩니다.
부탁한다.ContentType = "application/json; charset=utf-8";
- 데이터는 json 형식입니다.
axios와 superagent는 널리 사용되는npm HTTP 라이브러리의 2개로서 디폴트로 JSON 본문과 함께 동작합니다.
{ "id": 1, "name": "Foo", "price": 123, "tags": [ "Bar", "Eek" ], "stock": { "warehouse": 300, "retail": 20 } }
- "application/json" Content-Type은 사전 전송 요청 중 하나입니다.
요청이 단순한 요청이 아닌 경우 브라우저는 OPTIONS 메서드에 의해 HTTP 요청을 원래 요청보다 먼저 자동 전송하여 원래 요청을 전송해도 안전한지 여부를 확인합니다.괜찮으시다면 실제 요청을 보내주시기 바랍니다.자세한 내용은 여기를 참조해 주세요.
- application/json은 초보자 친화적입니다.URL 인코딩 어레이는 악몽이 될 수 있습니다.
이 둘의 가장 큰 차이점 중 하나는 JSON 인코딩은 일반적으로 전송된 값의 데이터 유형을 유지하는 반면(유효한 JSON 데이터 유형인 한), application/x-www-form-urlenced는 일반적으로 모든 속성을 문자열로 변환한다는 것입니다.
예를 들어, JSON 인코딩 게시물:
{"Name": "John Smith", "Age": 23}
서버는 대부분의 경우 Age 속성을 정수 23으로 해석합니다.
반면에
Name=John+Smith&Age=23
서버는 Age를 문자열 "23"로 해석할 가능성이 높습니다.
물론 다른 레이어를 사용하여 이러한 값을 해석하고 적절한 유형으로 변환하는 경우에는 문제가 되지 않을 수 있습니다.
언급URL : https://stackoverflow.com/questions/9870523/what-are-the-differences-between-application-json-and-application-x-www-form-url
'programing' 카테고리의 다른 글
| google이 create-display-app을 사용하는 리액트 앱에 정의되어 있지 않습니다. (0) | 2023.02.28 |
|---|---|
| 에서 json 키가 소문자임을 확인합니다.그물 (0) | 2023.02.28 |
| Spring Boot / h2-console 403과 Spring Security 1.5.2 (0) | 2023.02.28 |
| Wordpress에서 커스텀 포스트 유형의 기본 관리 정렬 순서를 커스텀 열로 설정하려면 어떻게 해야 합니까? (0) | 2023.02.28 |
| 잭슨 매퍼 사용에 대한 올바른 종속성 집합 (0) | 2023.02.28 |