背景:
在前后端接口设计上,一般会有一个状态码,表示成功或者失败。
但是一个请求会有两个状态,一个是通讯层面的,200,500,400,404等。一个是业务层面的,自己定义的。在某些场景下可能会混淆。比如请求成功了,但是业务失败了,这个时候对应的code返回什么呢?
看一下大厂的
微信的支付接口如下:
1、分为了两个码,一个是通讯的码,一个是业务的码。
2、通讯码相当于boolean值,只存成功或者失败,没有详细的分成不同编码,详细信息里显示信息。通讯成功后,再看里面业务的码是成功还是失败,失败的码才有分类,分成不同的码和对应的描述
3、没有管通讯状态404,估计因为是外部接口,而不是前后端接口
总结:微信的就是两层,两个字段来判断是否成功,先判断通讯是true还是false,true继续看业务编码是true还是false。
所以在调用微信支付接口时,需要判断两次,