2014-09-02 42 views
0

:auto-reload? true環通過它的內部wrap-reload中間件注入自動刷新<script>標記時,只要您返回狀態完整的HTML頁面。但是,發生錯誤時不包括此自動刷新腳本。因此,我必須手動刷新頁面。錯誤屏幕的Clojure環自動刷新腳本

我該如何告訴Ring將自動刷新腳本插入錯誤屏幕?

這是我project.clj

:ring {:handler my-app.handler/app 
     :auto-reload? true 
     :auto-refresh? true} 

回答

0

由於自動刷新加入到成功的響應,可能它需要也被添加到錯誤響應。您可以添加一個自定義錯誤響應,該響應返回一個主體包含自動刷新腳本的500錯誤。

+0

我不熟悉Ring的內部。你能爲我指出正確的方向嗎?是否有包含腳本的fn?我如何重寫錯誤響應? – 2014-09-02 19:14:39

+0

在這個答案中有一個很好的例子:http://stackoverflow.com/questions/12627410/idiomatic-way-to-catch-exceptions-in-ring-apps在:body中,你會把頁面內容觸發重定向 – 2014-09-02 19:46:43