2
我正在使用Laravel 4構建Web應用程序。我網站上的幾乎所有鏈接都通過jQuery AJAX加載內容。但是,當我正在構建,並且Laravel引發錯誤時,錯誤頁面不會顯示在我的目標區域中。所以我最終禁用了AJAX,所以我可以看到Laravel拋出的錯誤。如何在通過AJAX加載時顯示Laravel錯誤
有什麼我可以改變我的AJAX加載器,將顯示Laraval錯誤?
function LoadContent(url, target, method, data)
{
$(target).fadeOut(20);
var loadingTimeout = setTimeout(function() { $(target).html('<div style="text-align:center;font-size:150%;">Loading ...</div>').fadeIn(200); }, 1000);
var request = $.ajax({ url: url, type: method, data: data });
var tooLongTimeout = setTimeout(function() { request.abort(); request = false; $(target).html('<div class="large-9 large-centered columns"><h1>Request Failed</h1><p>Please try again or contact us to report the issue.</p></div>').fadeIn(200); }, 60000);
request.done(function(result) {
clearTimeout(loadingTimeout);
clearTimeout(tooLongTimeout);
$(target).html(result).fadeIn(50);
AjaxElements();
});
}
你可以嘗試把你的代碼放在try-catch塊並捕獲錯誤服務器端,然後返回一個json編碼的錯誤消息?我以前沒有遇到過這個問題,但這將是我的第一個方法。此外,在重新閱讀您的問題之後,您可能會更好地在服務器端代碼上進行單元測試,而不是嘗試調試客戶端。 – echochamber
如果您使用Google Chrome,則可以看到Laravel錯誤。右鍵單擊 - >檢查元素 - >網絡部分會顯示您的實際錯誤信息。 – Anam