App.RefreshSession = (controller, cb) ->
#do what you need here to refresh the session.. reading cookie etc
App.ServerProxy = (controller, cb) ->
if App.CurrentSession?
cb()
else
App.RefreshSession(controller,cb)
Chame App.ServerProxy para todas as suas chamadas de servidor
Então, em Ember, retorne uma promessa de garantir que as coisas sejam sincronizadas, especialmente se App.RefreshSession
for buscar coisas no servidor para:
App = Em.Application.create();
App.SomeRoute = Em.Route.extend({
model: function(){
return new RSVP.Promise(function(resolve, reject){
App.ServerProxy(function(){....});
});
}
});