166 lines
3.4 KiB
TypeScript
166 lines
3.4 KiB
TypeScript
/**
|
|
* @description: 请求结果集
|
|
*/
|
|
export enum ResultEnum {
|
|
STATUS = 200,
|
|
DATA_SUCCESS = 0,
|
|
SUCCESS = 2000,
|
|
SERVER_ERROR = 500,
|
|
SERVER_FORBIDDEN = 403,
|
|
NOT_FOUND = 404,
|
|
TIMEOUT = 10042,
|
|
}
|
|
|
|
// 数据相关
|
|
export enum RequestDataTypeEnum {
|
|
// 静态数据
|
|
STATIC = 0,
|
|
// 请求数据
|
|
AJAX = 1,
|
|
}
|
|
|
|
// 请求主体类型
|
|
export enum RequestContentTypeEnum {
|
|
// 普通请求
|
|
DEFAULT = 0,
|
|
// SQL请求
|
|
SQL = 1,
|
|
}
|
|
|
|
/**
|
|
* @description: 请求方法
|
|
*/
|
|
export enum RequestHttpEnum {
|
|
GET = 'get',
|
|
POST = 'post',
|
|
PATCH = 'patch',
|
|
PUT = 'put',
|
|
DELETE = 'delete',
|
|
}
|
|
|
|
/**
|
|
* @description: 请求间隔
|
|
*/
|
|
export enum RequestHttpIntervalEnum {
|
|
// 秒
|
|
SECOND = 'second',
|
|
// 分
|
|
MINUTE = 'minute',
|
|
// 时
|
|
HOUR = 'hour',
|
|
// 天
|
|
DAY = 'day',
|
|
}
|
|
|
|
/**
|
|
* @description: 请求间隔名称
|
|
*/
|
|
export const SelectHttpTimeNameObj = {
|
|
[RequestHttpIntervalEnum.SECOND]: '秒',
|
|
[RequestHttpIntervalEnum.MINUTE]: '分',
|
|
[RequestHttpIntervalEnum.HOUR]: '时',
|
|
[RequestHttpIntervalEnum.DAY]: '天',
|
|
};
|
|
|
|
/**
|
|
* @description: 请求头部类型
|
|
*/
|
|
export enum RequestBodyEnum {
|
|
NONE = 'none',
|
|
FORM_DATA = 'form-data',
|
|
X_WWW_FORM_URLENCODED = 'x-www-form-urlencoded',
|
|
JSON = 'json',
|
|
XML = 'xml',
|
|
}
|
|
|
|
/**
|
|
* @description: 请求头部类型数组
|
|
*/
|
|
export const RequestBodyEnumList = [
|
|
RequestBodyEnum.NONE,
|
|
RequestBodyEnum.FORM_DATA,
|
|
RequestBodyEnum.X_WWW_FORM_URLENCODED,
|
|
RequestBodyEnum.JSON,
|
|
RequestBodyEnum.XML,
|
|
];
|
|
|
|
/**
|
|
* @description: 请求参数类型
|
|
*/
|
|
export enum RequestParamsTypeEnum {
|
|
PARAMS = 'Params',
|
|
BODY = 'Body',
|
|
HEADER = 'Header',
|
|
}
|
|
|
|
/**
|
|
* @description: 请求参数主体
|
|
*/
|
|
export type RequestParamsObjType = {
|
|
[T: string]: string;
|
|
};
|
|
export type RequestParams = {
|
|
[RequestParamsTypeEnum.PARAMS]: RequestParamsObjType;
|
|
[RequestParamsTypeEnum.HEADER]: RequestParamsObjType;
|
|
[RequestParamsTypeEnum.BODY]: {
|
|
[RequestBodyEnum.FORM_DATA]: RequestParamsObjType;
|
|
[RequestBodyEnum.X_WWW_FORM_URLENCODED]: RequestParamsObjType;
|
|
[RequestBodyEnum.JSON]: string;
|
|
[RequestBodyEnum.XML]: string;
|
|
};
|
|
};
|
|
|
|
/**
|
|
* @description: 常用的contentTyp类型
|
|
*/
|
|
export enum ContentTypeEnum {
|
|
// json
|
|
JSON = 'application/json;charset=UTF-8',
|
|
// text
|
|
TEXT = 'text/plain;charset=UTF-8',
|
|
// xml
|
|
XML = 'application/xml;charset=UTF-8',
|
|
// application/x-www-form-urlencoded 一般配合qs
|
|
FORM_URLENCODED = 'application/x-www-form-urlencoded;charset=UTF-8',
|
|
// form-data 上传
|
|
FORM_DATA = 'multipart/form-data;charset=UTF-8',
|
|
}
|
|
|
|
//
|
|
|
|
// 请求公共类型
|
|
type RequestPublicConfigType = {
|
|
// 时间单位(时分秒)
|
|
requestIntervalUnit: RequestHttpIntervalEnum;
|
|
// 请求内容
|
|
requestParams: RequestParams;
|
|
};
|
|
|
|
// 全局的图表请求配置
|
|
export interface RequestGlobalConfigType extends RequestPublicConfigType {
|
|
// 组件定制轮询时间
|
|
requestInterval: number;
|
|
// 请求源地址
|
|
requestOriginUrl?: string;
|
|
}
|
|
|
|
// 单个图表请求配置
|
|
export interface RequestConfigType extends RequestPublicConfigType {
|
|
// 组件定制轮询时间
|
|
requestInterval?: number;
|
|
// 获取数据的方式
|
|
requestDataType: RequestDataTypeEnum;
|
|
// 请求方式 get/post/del/put/patch
|
|
requestHttpType: RequestHttpEnum;
|
|
// 源后续的 url
|
|
requestUrl?: string;
|
|
// 请求内容主体方式 普通/sql
|
|
requestContentType: RequestContentTypeEnum;
|
|
// 请求体类型
|
|
requestParamsBodyType: RequestBodyEnum;
|
|
// SQL 请求对象
|
|
requestSQLContent: {
|
|
sql: string;
|
|
};
|
|
}
|