我正在研究一些练习我的技能的项目。我的项目有一个SOA,由一台机器上的应用程序服务器和另一台机器上的数据库服务器组成。使用此系统的客户端可以是Web和电话。我开始在所有组件(包括客户端)RESTFull中进行所有通信。然而,很快我意识到这种方法存在局限性。特别是在客户端和应用服务器端。我遇到的最大问题是如何将错误传播给客户端。假设客户端发送修改数据库中记录的请求。因此请求被发送到应用服务器,应用服务器将调用数据库服务器来完成这项工作。如果出于某种原因出现问题,我希望客户(网络或电话)了解它(接近实时)。一种选择是手动将错误传播到我的控制器,并将错误消息放在对请求的响应中,并将其作为响应发送回客户端。但我觉得这不是正确的做法。有没有更好的办法?我正在使用Java,因此欢迎任何可以帮助我的文档,博客,库和技术的指针。 感谢
答案 0 :(得分:1)
如果您正在设计REST-ful实现,则应利用HTTP状态代码将错误代码返回给客户端。 Apigee有一些关于REST-ful API设计的很棒的教程。我建议在他们的网站上花一些时间来完成这些工作。
Here's a good tutorial on error messaging in REST-ful API design。