package com.secure.demo.common; /** * 统一 API 响应包装(前后端分离约定的标准响应格式)。 * *
 * {
 *   "code": 0,          // 0 = 成功,非 0 = 业务失败
 *   "message": "ok",    // 人类可读信息
 *   "data": { ... }     // 业务数据(成功时存在)
 * }
 * 
* * Web 用户端与 Android 设备端都按此格式解析,不再各自约定裸 Map 结构。 */ public class ApiResponse { public static final int CODE_OK = 0; private int code; private String message; private T data; public ApiResponse() { } public ApiResponse(int code, String message, T data) { this.code = code; this.message = message; this.data = data; } public static ApiResponse ok(T data) { return new ApiResponse<>(CODE_OK, "ok", data); } public static ApiResponse ok() { return new ApiResponse<>(CODE_OK, "ok", null); } public static ApiResponse fail(int code, String message) { return new ApiResponse<>(code, message, null); } public boolean isOk() { return code == CODE_OK; } // ===== Getters & Setters ===== public int getCode() { return code; } public void setCode(int code) { this.code = code; } public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } public T getData() { return data; } public void setData(T data) { this.data = data; } }