| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- /**
- * 辅助函数
- */
- const DATE_TIME_FORMAT = "YYYY-MM-DD HH:mm:ss";
- export function joinTimestamp<T extends boolean>(join: boolean, restful: T): T extends true ? string : object;
- export function joinTimestamp(join: boolean, restful = false): string | object {
- if (!join) {
- return restful ? "" : {};
- }
- const now = new Date().getTime();
- if (restful) {
- return `?_t=${now}`;
- }
- return { _t: now };
- }
- /**
- * 格式化请求参数时间
- */
- export function formatRequestDate(params: Record<string, any>) {
- if (Object.prototype.toString.call(params) !== "[object Object]") {
- return;
- }
- for (const key in params) {
- const value = params[key];
- if (value) {
- try {
- // 如果是字符串,trim 处理
- if (typeof value === "string") {
- params[key] = value.trim();
- }
- // 如果是对象,递归处理
- if (typeof value === "object" && value !== null) {
- formatRequestDate(value);
- }
- } catch (error: any) {
- throw new Error(error);
- }
- }
- }
- }
- /**
- * 将对象转换为 URL 参数
- */
- export function setObjToUrlParams(baseUrl: string, obj: Record<string, any>): string {
- let parameters = "";
- for (const key in obj) {
- parameters += key + "=" + encodeURIComponent(obj[key]) + "&";
- }
- parameters = parameters.replace(/&$/, "");
- return /\?$/.test(baseUrl) ? baseUrl + parameters : baseUrl.replace(/\/?$/, "?") + parameters;
- }
|