Laravel 5:当请求需要 JSON 时处理异常
我正在通过Laravel 5上的AJAX上传文件。除了一件事,我几乎一切都在工作。
当我尝试上传一个太大的文件(大于,我得到一个TokenMismatchException抛出。upload_max_filesize
post_max_size
但是,这是可以预料到的,因为我知道如果超过这些限制,我的输入将为空。空输入,意味着没有收到,因此为什么负责验证CSRF令牌的中间件大惊小怪。_token
然而,我的问题不在于抛出这个异常,而在于它是如何呈现的。当这个异常被Laravel捕获时,它会吐出通用Whoops页面的HTML(由于我处于调试模式,因此具有堆栈跟踪负载)。
处理此异常的最佳方法是什么,以便通过 AJAX(或请求 JSON 时)返回 JSON,同时保持默认行为?
编辑:无论引发何种异常,这似乎都会发生。我刚刚尝试通过AJAX(数据类型:JSON)向不存在的“页面”发出请求,试图获取404,并且发生了同样的事情 - 返回HTML,没有任何JSON友好。