在用tp5.1的时候,发现有个接口总是不停的抛出异常,并且异常的信息为空。
后面经过排查后得知:
think\Controller 类的error、success、result和redirect方法,因为上述三个方法会抛出HttpResponseException 异常,从而影响正常的异常捕获
通过阅读源码可以发现,tp的Controller中的跳转方法都在抛出异常,是通过抛出异常的方式实现。大坑啊!

解决方案就是不要用try包裹error、success、result和redirect方法,只对具体的业务逻辑进行try捕获异常。
网友评论