서버가 HTML 자체에서 생성하는 웹 페이지의 스켈 레탈 스냅 샷을 저장하므로 Ajax 요청을 서버로 다시 보낼 때 서버는 페이지는 클라이언트가 보였고 적절한 diff를 되돌려 보냅니다.클라이언트의 HTML에 데이터를 저장하는 방법/위치
이 뼈대는 기본적으로 Tree입니다. 각 노드는 구성 요소 (메뉴 모음, 사이드 바, 내용, 주석 등)를 나타내며 하위 구성 요소입니다.
현재 저는 Base64ed GZiped JSONed 데이터로 저장하고 있습니다. 순수한 JSON으로 약 4000자를 처리하지만 엔코딩하려면 약 500 자 정도 소요됩니다. (관심이 없으면 python의 Pickle은 ~ 3000 자까지만 압축하지만 ~ 2000까지만 압축합니다.)
내 질문은 데이터를 다운시킬 수있는 다른 방법이 있습니까? Base64보다 더 작은 웹 안전한 데이터 형식? GZip보다 컴팩트 한 압축? gzip 함수의 "레벨"을 6에서 9로 높이면 결과적으로 (~ 20 문자) 절약 효과가 나타납니다.
그리고 다른 질문은이 데이터를 어디로 이동해야합니까? 현재는 숨겨진 입력 필드의 가치에 어딘가에 앉아 있습니다. 어떤 입력의 속성, 다른 태그의 속성, 표시가있는 div의 내용이 숨겨져 있는지 여부가 중요합니까? 아니면 신경 쓸 가치가없는 것입니까?
나는 diffing을 서버에 보내고 diff를 클라이언트에게 보낸다. 나는 어느 쪽이든 그것을 할 수 있었지만 자바 스크립트가 마음에 들지 않아 최소한 $ D에 코딩을하고 싶습니다. 압축에 필요한 시간을 확인하겠습니다. 아마 나는 자바 스크립트 변수에 그것을 작성해야합니다. –
그래, 나는 같은 것을 제안 할 것이다 .. – Baz1nga