我想用vue和laravel制作SPA应用程序。对于返回错误,我有2种方法……最佳选择是什么?
1:
return response(['message'=>'page not found'] , 404);
2:
return response(['status'=>false , 'code'=>404 ,'message'=>'page not found'] , 200);
我认为第二种方法更好。因为它不会在浏览器控制台中显示错误。.您的评论是什么?
答案 0 :(得分:0)
这个问题的确很广泛,因为我认为您不是在询问Vue / Laravel的具体细节,而是在考虑如何将错误作为一个整体来对待。
我不了解Laravel的具体内容,但似乎您想返回HTTP错误,就好像错误是正确的一样,然后设置自定义code
字段,以便您的前端应用程序知道它们实际上是错误。
因此,用户请求服务器中的资源,如果该资源不存在,则返回200,但带有404代码。
这有点杂乱且不标准,我建议返回真实的HTTP代码。造成这种情况的主要原因有三个:
有些服务可以分析应用程序网络流量并生成专用报告。它们依赖于标准的HTTP响应代码。如果将来要使用此类服务,最好不要从响应中伪造HTTP代码。
最终会开始在您的项目上工作的新开发人员会对此感到困惑。
此外,还有第三方服务可以捕获前端错误,网络响应和跟踪并生成统计信息。同样,如果收到404或503或任何HTTP错误,则可能由于记录错误并获取正确的HTTP状态代码而很有用。