- 新增 Web 用户端(登录体系 + 统一 REST API 调用) - 后端增加用户认证、统一 ApiResponse、CORS 支持 - Android 设备端迁移至 MVVM + DataBinding + Retrofit 网络层 - 完善 README 架构说明与密码学原理文档 - 新增 .gitignore 与持久化数据表说明
75 lines
1.6 KiB
Java
75 lines
1.6 KiB
Java
package com.secure.demo.common;
|
|
|
|
/**
|
|
* 统一 API 响应包装(前后端分离约定的标准响应格式)。
|
|
*
|
|
* <pre>
|
|
* {
|
|
* "code": 0, // 0 = 成功,非 0 = 业务失败
|
|
* "message": "ok", // 人类可读信息
|
|
* "data": { ... } // 业务数据(成功时存在)
|
|
* }
|
|
* </pre>
|
|
*
|
|
* Web 用户端与 Android 设备端都按此格式解析,不再各自约定裸 Map 结构。
|
|
*/
|
|
public class ApiResponse<T> {
|
|
|
|
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 <T> ApiResponse<T> ok(T data) {
|
|
return new ApiResponse<>(CODE_OK, "ok", data);
|
|
}
|
|
|
|
public static ApiResponse<Void> ok() {
|
|
return new ApiResponse<>(CODE_OK, "ok", null);
|
|
}
|
|
|
|
public static <T> ApiResponse<T> 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;
|
|
}
|
|
}
|