JSON을 사용하기 위해 JSON을 사용해야합니까?


11

PHP / MySQl 백엔드를 사용하여 학습용 블로깅 사이트를 구축 중입니다. 모든 사용자 입력은 POST 요청에서 전송 된 양식으로 처리됩니다.

JSON을 사용하면 더 깔끔해 지거나 기능을 쉽게 유지 관리하거나 추가 할 수 있습니까? 아니면 아무 이유없이 교환 형식을 추가하고 있습니까?

본질적으로 JSON을 사용하여 어떤 기능을 가장 잘 구현할 수 있습니까?


4
대안은 무엇입니까? 자신 만의 데이터 형식을 발명 하시겠습니까?

@delnan : Yaml, CSV. 아마 몇 가지 다른 것을 생각할 수 있습니다.
Robert Harvey

10
현명한 계획을 사용하기 위해 blah를 사용하는 경우는 거의 없습니다. JSON의 장점을 살펴본 다음 특정 측면에서 JSON을 사용할 가치가 있는지 고려하십시오.
whatsisname

@RobertHarvey : 또는 표준 HTTP 양식.
cHao

7
I'm building a blogging site for learning-관련 기술을 배우십니까? 또는 다른 사람에게 자료를 제공하기 위해? 전자의 경우 절대적으로-그것을 사용하기 위해 json을 사용하므로 사용법을 배우십시오. 새로운 기술로 도전하십시오. 그렇지 않으면 사용 방법을 배우지 못할 것입니다.

답변:


15

JSON에는 몇 가지 장점이 있습니다.

  • 기존의 성숙한 도구를 사용하여 유효성을 검사하고 구문 분석 할 수있는 구조화 된 형식입니다.
  • JavaScript와 쉽게 대화 할 수있어 AJAX 통신에 매우 유용합니다.
  • 매우 간단하고 가볍습니다. XML 데이터 교환을 사용하려는 모든 것이 JSON보다 일반적으로 더 좋습니다.

내 경험상, 호출에서 단일 의미 요소 만 반환하면 일반 텍스트로 보냅니다. 그러나 여러 정보를 반환해야하는 경우 JSON을 사용하십시오.


6
JS와의 대화에서 eval을 사용하여 그 가치를 얻는 것은 아닙니다. 대부분의 브라우저에서 사용 가능한 JSON.parse를 사용하십시오
ratchet freak

1
그것은뿐만 아니라 PHP 쉽게 말 이후 json_decode()json_encode()변환 JSON 문자열과 기본 사이의 Array()데이터 구조
Izkata

서버에 해당 기능이있는 경우에만 @Izkata.
Darth Egregious

양식 제출의 경우를 제외하고 JSON을 사용하면 표준 이 중단 됩니다 . 왜 깨지지 않은 것을 고쳐야합니까?
Brendan Long

2
@BrendanLong : 그 표준은 JSON 사용 여부에 대해 아무 말도하지 않습니다. 양식 제출을 수행하는 경우 HTTP 표준에 따라 모든 데이터를 인코딩해야합니다. 그러나 보내는 양식 요소 중 하나가 여러 의미 요소를 포함하는 복잡한 항목 인 경우 해당 요소를 JSON 형식 (HTTP 라이브러리에서 올바르게 인코딩 됨)으로 설정하는 것이 좋습니다.
메이슨 휠러

5

설명을 위해-양식을 통해 모든 것이 제출되는 블로그 플랫폼처럼 들립니다. 아니요. 모두 JSON으로 변환 할 필요는 없습니다. PHP는 양식을 완벽하게 처리합니다. 그 상황에서 새로운 합병증을 도입 할 이유가 없습니다.

다시 말하지만 특정 상황 에서 JSON은 반 구조화 된 데이터 웹 브라우저로 다시 보내야하는 경우 사용할 수 있습니다 . 브라우저 측에서 JSON은 자바 스크립트로 파싱하기가 매우 쉽습니다.


2

JSON은 Ajax 요청을 사용하여 서버에 데이터를 전달하고 전체 포스트 백을 수행하지 않고 표시 할 데이터를 가져 오는 JavaScript 무거운 사이트를 만들려는 경우에만 유용합니다. JSON을 사용하여 해당 기능을 사용하지 않으려는 경우 코드를 직렬화 / 직렬화 해제 해야하는 다른 레이어에 코드를 래핑하여 유용한 작업을 수행하는 것입니다.


1

JSON을 구현하면 본질적으로 사이트가 향상 될 것이라고 생각하지 않습니다. JSON은 JavaScript 객체 표기법입니다. 따라서 JavaScript를 배우기 시작하지 않으면 모든 것이 JSON에 있는지 확인하는 데 고유 한 가치가 없습니다.


JSON을 사용 / 남용하기 위해 JavaScript를 배울 필요가 없습니다. 언어 독립적입니다.
CokoBWare

0

JSON은 확장 성과 구조가 매우 우수하지만 가장 빠르지는 않습니다.

JSON은 인코딩 문제를 해결하므로 서버에서 클라이언트로 데이터를 보내는 데 유용합니다.

그러나 서버에서는 최대 성능과 최소 디스크 공간 소비가 필요합니다. 따라서 테이블의 경우 MySQL 열을 사용해야하며 테이블이 아닌 경우 이진 형식이 선호됩니다.

이진 파일의 확장 성 문제를 해결하기 위해 구조 이름의 4 자 코드와 버전의 1-2 바이트 숫자로 구조에 태그를 지정할 수 있습니다.


6
JSON은 데이터베이스가 아닌 데이터 형식입니다.
Robert Harvey

예. 그러나 배열을 저장하는 데 사용할 수 있습니다.
Triang3l
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.