Ben aynı sorunu ile mücadele ettik. Aşağıdaki hack'i başarıyla uyguladım.
window.App = Em.Application.extend
ready: ->
$(document).ajaxError((event, request, settings) =>
if request.status == 401 && !["/profile", "https://stackoverflow.com/users/sign_in.json"].contains(settings.url)
controller = App.__container__.lookup('controller:application')
controller.transitionToRoute('sign_in')
)
Buradaki fikir, jQuery ajaxError olayını yakalamaktır. Bu durumda, hatayı (.e.g. Request.status == 401), hataya neden olan (ör. Settings.url) ve ne yapılacağına karar verebileceğiniz bu bilgilere dayanarak cadıyı kontrol edebilirsiniz. Bu sorun tek tek bütün yolları üzerinde yapılması gerekir olmasıdır
@store.get("user").then(=>
# Success stuff here
).fail(=>
@transitionTo("login") # Do other fancy error stuff here too
)
:
Umut bu ben daha iyi bir yolu Sihirli Şehir vaat kullanmaktır düşünüyorum
Bu şimdi yönlendirici tarafından ele alınmalıdır,: durum bir hata dizi içindeki bir hata nesnesi içinde bulunan bir dize, olacak http://stackoverflow.com/questions/17981563/ember -veri işleme-401S –