Нет, это не похоже на кеширование.
Однако вы можете сделать ваш ресурс REST кэшированным довольно просто.Предположим, у вас есть RESTful-ресурс, подобный этому.
$.Model('Example.Models.Example',
{
findAll: REST_BASEPATH + "/example"
}
Теперь, чтобы сделать это кэшированным, вы сначала повторно реализуете этот запрос с некоторым явным jQuery:
$.Model('Example.Models.Example',
{
findAll: function(){
$.ajax({
url: REST_BASEPATH + "/example",
type: 'get',
dataType: 'json',
})
}
}
Теперь findAllФункция вернет отложенный объект jQuery, который может использовать JMVC.Чтобы добавить кеширование, вы можете сохранить отложенный объект при первом вызове и вернуть тот же объект при последующих вызовах.Вот так:
var cache = undefined
$.Model('Example.Models.Example',
{
findAll: function(){
if (!cache) {
cache = $.ajax({
url: REST_BASEPATH + "/example",
type: 'get',
dataType: 'json',
})
}
return cache
}
}
Я нахожу это несколько клёвым, но это то, что я только что придумал сегодня.Если есть более элегантный способ, пожалуйста, дайте мне знать.