【问题标题】:Laravel responses good practiceLaravel 响应良好实践
【发布时间】:2019-01-18 20:44:30
【问题描述】:

我正在使用 Laravel 5.6 作为我的个人项目的后端,并且我一直在做一些(在我看来)是不好的做法,无论哪种方式,我都想知道它是否真的那么糟糕。

首先,我使用 Vue.js (CLI 3) 项目作为客户端,我正在向我的 Laravel 后端发出请求。现在,为了处理通知/祝酒词,我使用了下一种格式:

return response()->json([
  'alert' => [
      'title' => 'Server error.',
      'text' => 'Error explanation text.',
      'type' => 'error'
  ]
], 200);

无论我做对了还是错了都没关系,我总是以相同的格式和200 status 回复。 错了吗?我应该在回复中使用其他状态吗?

我这样做是因为在使用404 状态(例如)时我无法在客户端获得(我不知道如何)自定义“警报”数组,这是我能找到的唯一方法处理它每次都使用这个200 状态。

【问题讨论】:

标签: laravel vue.js


【解决方案1】:

HTTP 状态码是一种轻松识别响应的机制,它有助于客户了解请求是否正常,只需检查它即可,例如,搜索引擎机器人仅通过状态码就可以区分错误页面。

以 Axios 为例,JS 的 HTTP 客户端,即使是错误https://stackoverflow.com/a/39153411,你也可以读取响应数据。

还可以查看此资源,该资源将帮助您选择哪个状态代码 https://www.restapitutorial.com/httpstatuscodes.html

【讨论】:

  • 我查看了axios 库,它实际上让我可以处理这样的错误响应:error.response.data.alert 所以它只会找到。感谢您的回答!
猜你喜欢
  • 1970-01-01
  • 2019-11-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-09
  • 2015-06-09
  • 2018-12-02
  • 2023-03-23
相关资源
最近更新 更多