先後端分離接口規範

最近在開發,遇到先後端關於Boolean類型的參數傳參和接收的問題:

場景:後臺會根據用戶是否出車/是否出司機(Boolean類型)來決定後端的業務邏輯(好比費用的計算),前端使用JSON字符串類型傳輸,後端使用@RequestBody接收對象...前端

先後端分離特殊內容規範

單選框、下拉框、複選框java

由後端接口統一邏輯斷定是否選中,經過isSelect標示是否選中,示例以下:json

{
    code: 200,
    data: {
        message: "success",
        list: [{
            id: 1,
            isCarProvide: 1,
            isDriverProvide: 0
        }]
    }
}

規定:禁止下拉框、複選框、單選框斷定選中邏輯由前端來處理,統一由後端邏輯斷定選中返回給前端展現;後端

Boolean類型參數的傳值app

關於Boolean類型,JSON數據傳輸一概使用 1/0 來標示,1爲是/true,0爲否/false,前端單選框/複選框表示boolean,後臺使用boolean接收,前端value值使用true/false或者1/0都是能夠自動轉成boolean類型的,我作如下測試:前後端分離

Test實體類ide

@Data
@AllArgsConstructor
@NoArgsConstructor
public class Test implements Serializable {

    private static final long serialVersionUID = 2958237749066165066L;

    private Boolean carProvide;

}

ApiTest測試

@Controller
public class ApiTest {

    @PostMapping("/test")
    @ResponseBody
    public String booleanTest(@RequestBody Test test) {
        Boolean isCarProvide = test.getCarProvide();
        if (isCarProvide) {
            return "Boolean test success, isCarProvide value is:" + isCarProvide.booleanValue();
        } else {
            return "Boolean test failed, isCarProvide value is:" + isCarProvide.booleanValue();
        }
    }
}

 

這裏我得出告終論,前端boolean類型的傳輸value的值都規定使用0/1,後端直接使用Boolean類型接收,不須要咱們手動轉換!!!spa

相關文章
相關標籤/搜索