2013-03-05 3 views
1

API를 클라이언트 측 JS에서 쿼리 한 다음 JS를 통해 페이지에 결과를 표시합니다.클라이언트 측 캐싱 (JavaScript 사용)

초당 5 개로 제한됩니다. 실생활에서는 최대 11 개의 API 호출을 하나의 루프에서 보낼 수 있습니다.

은 내가 필요한 것 :

  1. 보통 내가 한 루프에서 약 50 통화를 할 필요가 있기 때문에 내가 11 쿼리 제한을 우회하기 위해 어떻게 든해야합니다.

  2. 모든 페이지를 새로 고침 할 때마다 동일한 API 요청을 보내지 않도록해야합니다.

분명한 해결책은 캐싱입니다. 속도 요구 사항을 준수하기 위해 클라이언트 쪽에서 데이터를 캐시하고 싶습니다.

질문 :

어떻게? 쿠키가 4KB 크기 제한 때문에 좋은 해결책이라고 생각하지 않습니다. Offline-Gmail에 사용하는 Google 장비에 대해 들었지만 최근 검색 결과에 더 이상 존재하지 않는 것으로 나타났습니다.

+1

Google Gears는 최신 브라우저에서 거의 모든 기능이 기본적으로 지원되므로 가치가 하락합니다. LocalStorage 및 SessionStorage API를 살펴보십시오. LocalStorage가 귀하의 필요에 부합 할 것입니다. – SWilk

답변

2

브라우저를 새로 고치는 사이에 캐시를 유지해야하는 경우에만 localstorage를 사용할 수 있습니다. 그렇지 않으면 배열이나 결과에서 메모리를 보유하는 것과 같은 메모리를 사용할 수 있습니다.

+0

페이지 새로 고침 사이에 데이터를 저장해야하지만 한 달 동안처럼 데이터를 저장해야합니다. localstorage는 재미 있지만 모든 브라우저가이를 지원합니까? – rinchik

+0

@rinchik 오직 현대적인 브라우저가 HTML5 기능을 지원하기 때문에 다른 해결책은 파일을 서버에 저장하고 스크립트가 시작될 때 해당 파일을로드하는 것입니다. – jcubic

+1

window.name이 가능한 대안이 될 수 있습니까? 보안 개발로 인해 방해를 받았는지 확실하지 않지만 2MB의 저장 용량이 있다고 생각합니다. – user18477575