如何优雅地使用DingoAPI设计restful错误和响应

发布于 2022-09-05 19:26:50 字数 534 浏览 19 评论 0

按照restful的规则来,状态码应该放在headers中。
不过,比如现在DingoAPI 提供地ValidationHttpException(),返回的结果是这样地,当然HTTP状态码也返回422。既然在header中返回了,就感觉没必要在body里在添加status_code了,不统一。

{
    "message": "422 Unprocessable Entity",
    "errors": [
        {
            "field": "password",
            "code": "The password confirmation does not match."
        }
    ],
    "status_code": 422
}

有点困惑:

  • 是把所有状态放body便于处理,还是header好处理?

  • 还有一个疑问。如果我返回了多种 3XX,4XX, 5XX的,前端处理不是很麻烦么?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

水染的天色ゝ 2022-09-12 19:26:50

http 的状态码肯定是放在header里的
至于你说前端处理麻不麻烦,我只能说,Jquery的ajax,asixo等常用库,基本上都对不是200的状态码,做异常抛出,或错误处理,所以前端一点也不麻烦

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文