MVC 架构中哪里处理异常?
说,我正在使用 AJAX 上传文件并发生异常。它在哪里处理?对此的最佳做法是什么?它应该在控制器中吗?那么,当异常发生时,视图可以显示警报吗?
MVC 架构中哪里处理异常?
说,我正在使用 AJAX 上传文件并发生异常。它在哪里处理?对此的最佳做法是什么?它应该在控制器中吗?那么,当异常发生时,视图可以显示警报吗?
控制器(顾名思义)控制应用程序(或应用程序的特定部分)的执行。由于它应该处理任何类型的 I/O,它似乎是添加任何类型的异常处理逻辑的最佳位置。
此外,正如您自己意识到的那样,您可以拥有一个Error
在抛出异常时返回 -type View 的通用方法,或者如果需要,甚至可以重试几次操作。View 和 Model IMO 都不应该关心任何异常处理逻辑。
不了解ajax,但异常应该在控制器中。所有侦听器、try/catch 和此类处理程序都应始终位于控制器中,按照设计和消除过程。即使您的视图抛出错误,控制器也应该处理它们。