페이지 넘김 컬렉션을 노출하는 REST API의 데이터를 앱에서 사용하며 컬렉션의 항목 수가 무한히 많을 수 있습니다 (즉, 한 번에 모두 가져와 브라우저 세션에 저장하기에는 너무 많은 항목).페이지 매김 모음을 가져오고 캐싱하는 데 어떤 전략을 사용합니까?
이러한 데이터의 캐시를 가져오고 캐시하고 무효화하는 좋은 전략은 무엇입니까?
말해, API는 다음과 같은 응답
GET /users?page=1&per_page=50
클라이언트가 또는 컬렉션을로드 할 수있다
{
"paging": {
"per_page": 20,
"page": 1,
"previous": null,
"self": "/api/v1/users?per_page=20&page=1",
"next": "/api/v1/users?per_page=20&page=2"
},
"data": [
// first 20 users
]
}
(즉, 수집 된 데이터 + 페이징 메타 데이터를 포함한다) 등이며 인접한 페이지에서 한 번에 한 페이지 씩. 컬렉션의 사용자는 모든 클라이언트에 의해 변경 될 수 있습니다. 결과 일관성으로 충분하며 현재로서는 쓰기 충돌이 걱정되지 않습니다.
질문은 angularjs 앱의 컨텍스트에 있지만 일반적인 시나리오입니다.
안녕하세요 @ 님 - 님, 캐시 된 컬렉션에서 단일 항목을 가져올 때 무엇을합니까? 로컬 데이터를 탐색하여 먼저 찾으십시오. 그리고 컬렉션의 항목이 업데이트되고 서버에 다시 저장 될 때 수행 할 작업은 무엇입니까? –
네, 아마도. 난 그냥 모든 항목의 번호와 배열을 초기화합니다. 그런 다음 언제든지 단일 항목을 업데이트 할 수 있습니다. –