2012-08-28 90 views
0

我有一個簡單的使用Backbone設置的OAuth驗證,它運行得很好。我的問題有些挑剔(儘管......我也是Backbone的新手),但是我希望找到一個可能知道如何解決這個問題的人。Backbone.js會話執行流程

我有一個會話模型,它在初始化時根據localStorage中存在的值設置@authenticated值。這裏還有一個方法authenticate(),它檢查@authenticated值是否通過/失敗。如果值檢查失敗,它會使用我的路由器導航到登錄路由。如果值檢查通過,則會運行由用戶傳入的可選回調。我運行Session.authenticate(),如果它通過,路由到「#home」(和我的路由器處理加載額外的視圖)。在我的主AppView(第一個視圖運行在應用程序啓動)。

我的問題是:作爲未經過身份驗證的用戶,如果我在瀏覽器中鍵入http://url.com/#home,我已成功路由到「#login」,但如果我提出我的DevTools,我可以看到一個請求我的「HomeView」視圖中的圖像。我不瞭解Backbone如何流經這個流程?不應該在應用程序初始化之前運行「#home」的路由,因此甚至不會嘗試加載「HomeView」?

+0

讓我知道是否可以將任何代碼放入Gist中以使其更清晰。 – Mike

回答

0

您使用的是什麼樣的模板引擎?如果你的模板是內聯的,在你的骨幹應用程序所在的HTML模板中,那麼我相信這些內部的圖像在頁面加載時被渲染。我可能是錯的。另外,通過在視圖的初始化方法中將某些內容記錄到控制檯,確保您的HomeView不在運行。