저는 현재 html 문자열을 반환하는 (매우 간단하게) ajax 호출을합니다. 누구를 부르 느냐에 따라이 문자열은 매우 길어질 수 있습니다. 제가 알고 싶은 것은 왜 JSON 결과를 반환하고 나중에 긴 문자열을 반환하기보다는 HTML을 빌드하는 것이 더 나은지입니다. HTML 대신 JSON을 반환JSON 개체 또는 문자열 결과 집합
답변
일부 장점 :
- 데이터 분석 또는 다른 용도의 데이터로 사용할 수 있습니다, 그냥 프리젠 테이션에 사용되지 않습니다.
- JSON 데이터는 일반적으로 전체 프레젠테이션 HTML보다 훨씬 작아서 인터넷을 통해 더 적은 데이터를 전송합니다.
- 데이터와 프레젠테이션을 하나의 단일 API로 혼합하지 않고 분리하여 만듭니다. 서버는 별도의 코드 조각이 표시로 바뀌는 데이터를 반환합니다.
- JSON 데이터는 프리젠 테이션 (예 : 필터링, 정렬, 태그 지정, 확장/축소 등) 전에 처리하거나 수정할 수 있습니다.
- 많은 다른 유형의 프리젠 테이션에 대해 동일한 JSON 데이터를 사용할 수 있습니다. HTML을 반환하면 프리젠 테이션이 이미 구워져 있으므로 다른 프리젠 테이션을 원하면 완전히 새로운 AJAX 호출을 만들어야합니다. 당신이 극단적 인 방법은 이것에 대해 생각하려면
, 왜 데이터베이스가 원시 데이터를 반환하지 스스로에게 물어 및 데이터가 아닌 HTML보기? 실제 데이터를 사용하면 훨씬 다양한 종류의 작업을 수행 할 수 있기 때문에 데이터는 데이터를 제공하고 데이터를 사용하여 무언가를 수행하는 다양한 코드 조각 (분석, 결합 다른 데이터와 함께, 결정을 내리고보기 위해 제시하는 등 ....). 데이터베이스가 데이터의 HTML보기 만 리턴 한 경우, 데이터로이 모든 다른 작업을 수행하는 것이 훨씬 더 어려울 것입니다. 실제로 Ajax 호출에 대해서도 마찬가지입니다. 이는 클라이언트의 데이터 액세스에 불과합니다.
나에게 돌아와 줘서 고마워. 그러나 나의 부름은 전적으로 발표를위한 것이기 때문에 데이터를 조작 할 필요가 없습니다. 클라이언트의 브라우저를 고려하면 HTML 문자열을 처리하거나 JSON을 처리하는 것이 더 효율적입니다. 아니면 JSON이 인터넷을 통해 전송할 "작음"이라는 사실에 착수 할 것입니다. –
@I_understand_sometimes - "효율성"만보고 있다면 그 의미가 무엇인지 정의해야합니다. 아마도 데이터의 정확한 구성과 크기, 프레젠테이션 작동 방식에 달려있을 것입니다. 나는 어느 방향에서든 브라우저의 차이점을 알 수 없다고 추측합니다. 참고로, 좋은 프로그래밍 디자인은 현재 디자인에 필요한 최소 사양을 설계하는 것이 아니라 현재 요구 사항을 충족시키는 방식으로 설계하고 미래에 가능한 많은 다른 것들에 사용될 수있는 방식으로 설계됩니다 (필자의 요점 JSON 사용에 관해서). – jfriend00
@I_understand_sometimes - 디자인의 유연성을 측정하는 데 몇 주 내에 누군가 데이터를 정렬하거나 데이터를 필터링하거나 여러 프레젠테이션을 제공하려는 경우 얼마나 많은 작업이 필요할지 스스로에게 자문 해보십시오. 어떤 디자인 방향을 통해 더 쉽게 추가/변경할 수 있습니까? – jfriend00
성명을 두 번 읽으십시오.이 문자열은 매우 길어질 수 있습니다. _ – Satpal
얼마나 걸리나요? 문제없이 AJAX를 사용하여 완벽한 웹 사이트를 검색 할 수 있습니다. 그게 왜 비동기! –
최대 문자 수는 지금까지 약 12K에 이릅니다. –