RPC 接口返回值一般有两种形式,一种是用 Result 对象包装,可能对不同语言调用来说会更好,也是阿里规范建议的。另一类是不包装,错误码以业务异常的形式抛出。个人倾向于抛异常的形式,因为 Result 解析对于调用者会比较麻烦,例如需要先判断 Result 的 code 是否是成功状态。而抛业务异常,就比较方便,调用者调用接口时 catch 住业务异常,此外考虑性能问题,可以使业务异常只包含当前异常栈。大家更倾向于哪一种呢,或者是还有其他形式?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/571248
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.