![]() |
1
5
我的答案并不是针对Laravel,因为我觉得使用框架思维模式实际上与您最初的问题背道而驰。
总是抛出定制的异常
然后在控制器中处理转换。在这种情况下,用一个
从本质上来说,考虑计算器,它会
|
![]() |
2
0
在何处引发HTTP异常? 虽然这通常取决于偏好,但框架本身似乎对此采取了一种固执己见的立场,并且应该将它们扔到任何地方。事实上,Laravel有一些有用的帮助器,可以使抛出带有相关响应代码的异常更容易:
实例:
这是在 Error handling section 手册中的
注意
关于这个问题似乎有一个普遍的误解。我的理解是,问题是应该在何处抛出HTTP异常,但它正在演变为在HTTP上下文中进行更通用的异常处理。
首先,如果您有一个HTTP异常,这意味着只有在HTTP请求/响应循环的上下文中才有意义的异常,那么您应该能够将它扔到发生它的地方,而不是在它到达控制器时将它转换成其他东西,这就是
但是,如果您有一个异常(任何类型的异常),在未处理时应使用特定的HTTP响应代码进行解释,则可以选择处理该异常:
|
![]() |
Jess The Witch · GCP云功能中处理延迟任务的模式 6 月前 |
![]() |
David · 何时实际应用字符编码? 6 月前 |
![]() |
symcbean · curl身份验证失败,在浏览器中有效 6 月前 |
|
preachpp · 如何从特定的损坏URL中提取正确的URL? 11 月前 |
![]() |
Omar Ahmed · 可以仅使用(CSRF)令牌进行身份验证吗 1 年前 |