UNPKG

@lark-project/cli

Version:

飞书项目插件开发工具

75 lines (74 loc) 3.64 kB
"use strict"; var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.request = void 0; const axios_1 = __importStar(require("axios")); const env_1 = require("../utils/env"); const logger_1 = require("../utils/logger"); const codeMsgMap = { 1000050272: 'No permission', 1000051991: 'The directory structure of the compressed package is faulty', // 压缩包目录结构报错 1000051990: 'An error occurs when opening the compressed package', // 打开压缩包报错 1000051989: 'The plug-in file version already exists', // 插件文件版本已存在 1000051988: 'Plug-in file not supported (file type or size)', // 插件文件不支持(文件类型或大小) 1000052041: 'Plug-in current version is less than or equal to the latest version, please change version before release', }; async function request(url, config = {}) { var _a; logger_1.logger.debug('request', config.method, url, 'with', env_1.env.ttEnv); config.headers = Object.assign(Object.assign({}, (config.headers || {})), { 'x-lark-gw': 1 }); // for debug env if (env_1.env.ttEnv) { config.headers['x-tt-env'] = env_1.env.ttEnv; if (env_1.env.ttEnv.startsWith('ppe')) { config.headers['x-use-ppe'] = 1; } if (env_1.env.ttEnv.startsWith('boe')) { config.headers['x-use-boe'] = 1; } } const response = await (0, axios_1.default)(url, config).catch(e => { var _a, _b, _c; if ((0, axios_1.isAxiosError)(e)) { logger_1.logger.debug('response', (_a = e.response) === null || _a === void 0 ? void 0 : _a.status, (_b = e.response) === null || _b === void 0 ? void 0 : _b.headers['x-tt-logid'], (_c = e.response) === null || _c === void 0 ? void 0 : _c.data); } throw e; }); logger_1.logger.debug('response', response.status, response.headers['x-tt-logid']); // 符合后端接口结构的请求直接按 code 解析 if (typeof response.data === 'object' && 'code' in response.data) { const { code, error, data, msg } = response.data; if (code !== 0) { const errMsg = ((_a = error.localizedMessage) === null || _a === void 0 ? void 0 : _a.message) || msg || codeMsgMap[response.data.error.id]; logger_1.logger.debug('response error code', code, errMsg); throw Error(errMsg); } logger_1.logger.debug('response data', JSON.stringify(data, null, 0)); return data; } logger_1.logger.debug('response data', response.data); return response.data; } exports.request = request;