我有一个微服务架构,很少有微服务有自己的客户端,以便其他服务轻松使用服务 API。
如果我们需要从客户端返回对某些服务的响应,我们也可以预期,当客户端请求和客户端可能返回一些 http 状态时,可能会发生错误(例如,如果数据不存在,则返回 404(未找到))不存在此类请求,或者在出现意外服务错误时返回 500(内部服务器错误)。
我的问题是我们应该使用哪种方法从客户端抛出异常? 我们是否需要在客户端创建自定义异常并以适当的方式处理这些异常?例如MyServiceBasicException、MyServiceResourceNotFoundException、MyServiceInternalServiceErrorException等等? 或者我们需要使用已经存在的异常(例如来自 Spring ResourceNotFoundException 的异常,如果此类请求的数据不存在,则可以抛出该异常)或其他库? 有哪些好处有一种或另一种方法?
提前致谢。
最佳答案
如果您想基于异常类型进行一些复杂的处理,那么您可以扩展其中一个异常并执行此操作。否则,如果只是为了传播的目的,我会说重用。
关于java - 自定义异常是否最好从 java 客户端抛出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48166146/