env-manage-plugin
Version:
A dev env plugin that integrates an Express server with request proxying capabilities.
37 lines (36 loc) • 958 B
JavaScript
import { z } from 'zod';
/**
* 基础响应结构的Zod校验规则
* 用于统一API返回格式,同时支持前后端类型共享
*/
export const BaseResponseSchema = z.object({
/**
* 状态码
* - 200表示成功
* - 非200表示异常
*/
code: z.number(),
/**
* 响应消息
* - 成功时为"success"或相关提示
* - 失败时为错误描述
*/
message: z.string(),
/**
* 响应数据
* - 可选字段,根据接口需求动态变化
* - 类型由泛型参数指定
*/
data: z.unknown().optional()
});
/**
* 创建带具体数据类型的响应Schema
* 用于后端校验特定接口的响应格式
* @param dataSchema 具体数据字段的Zod校验规则
* @returns 包含具体数据类型的完整响应Schema
*/
export const createResponseSchema = (dataSchema) => {
return BaseResponseSchema.extend({
data: dataSchema.optional()
});
};