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