@leeguoo/yapi-mcp 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +299 -0
- package/dist/cli.d.ts +2 -0
- package/dist/cli.js +32 -0
- package/dist/cli.js.map +1 -0
- package/dist/config.d.ts +22 -0
- package/dist/config.js +174 -0
- package/dist/config.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +58 -0
- package/dist/index.js.map +1 -0
- package/dist/server.d.ts +21 -0
- package/dist/server.js +847 -0
- package/dist/server.js.map +1 -0
- package/dist/services/yapi/api.d.ts +56 -0
- package/dist/services/yapi/api.js +432 -0
- package/dist/services/yapi/api.js.map +1 -0
- package/dist/services/yapi/auth.d.ts +24 -0
- package/dist/services/yapi/auth.js +239 -0
- package/dist/services/yapi/auth.js.map +1 -0
- package/dist/services/yapi/authCache.d.ts +29 -0
- package/dist/services/yapi/authCache.js +172 -0
- package/dist/services/yapi/authCache.js.map +1 -0
- package/dist/services/yapi/cache.d.ts +14 -0
- package/dist/services/yapi/cache.js +232 -0
- package/dist/services/yapi/cache.js.map +1 -0
- package/dist/services/yapi/logger.d.ts +17 -0
- package/dist/services/yapi/logger.js +61 -0
- package/dist/services/yapi/logger.js.map +1 -0
- package/dist/services/yapi/types.d.ts +102 -0
- package/dist/services/yapi/types.js +3 -0
- package/dist/services/yapi/types.js.map +1 -0
- package/dist/services/yapi.d.ts +28 -0
- package/dist/services/yapi.js +84 -0
- package/dist/services/yapi.js.map +1 -0
- package/dist/skill/install.d.ts +1 -0
- package/dist/skill/install.js +724 -0
- package/dist/skill/install.js.map +1 -0
- package/dist/yapi-cli.d.ts +2 -0
- package/dist/yapi-cli.js +592 -0
- package/dist/yapi-cli.js.map +1 -0
- package/package.json +77 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { ApiInterface, ProjectInfo, CategoryInfo, ApiSearchResultItem, ApiSearchResponse, SaveApiInterfaceParams, SaveApiResponse } from "./types";
|
|
2
|
+
export declare class YApiService {
|
|
3
|
+
private readonly baseUrl;
|
|
4
|
+
private readonly tokenMap;
|
|
5
|
+
private readonly defaultToken;
|
|
6
|
+
private projectInfoCache;
|
|
7
|
+
private categoryListCache;
|
|
8
|
+
private readonly logger;
|
|
9
|
+
constructor(baseUrl: string, token: string, logLevel?: string);
|
|
10
|
+
setProjectToken(projectId: string, token: string): void;
|
|
11
|
+
setProjectTokens(tokens: Map<string, string>, options?: {
|
|
12
|
+
overwrite?: boolean;
|
|
13
|
+
}): void;
|
|
14
|
+
getConfiguredProjectIds(): string[];
|
|
15
|
+
getProjectInfoCache(): Map<string, ProjectInfo>;
|
|
16
|
+
getCategoryListCache(): Map<string, CategoryInfo[]>;
|
|
17
|
+
private getToken;
|
|
18
|
+
private request;
|
|
19
|
+
getCategoryList(projectId: string): Promise<CategoryInfo[]>;
|
|
20
|
+
addCategory(projectId: string, name: string, desc?: string): Promise<any>;
|
|
21
|
+
loadAllCategoryLists(): Promise<void>;
|
|
22
|
+
getProjectInfo(projectId: string): Promise<ProjectInfo>;
|
|
23
|
+
loadAllProjectInfo(): Promise<void>;
|
|
24
|
+
getInterfaceMenu(projectId: string): Promise<any[]>;
|
|
25
|
+
getApiInterface(projectId: string, id: string): Promise<ApiInterface>;
|
|
26
|
+
saveInterface(params: SaveApiInterfaceParams): Promise<SaveApiResponse>;
|
|
27
|
+
addInterface(params: SaveApiInterfaceParams): Promise<SaveApiResponse>;
|
|
28
|
+
updateInterface(params: SaveApiInterfaceParams): Promise<SaveApiResponse>;
|
|
29
|
+
saveInterfaceUnified(params: SaveApiInterfaceParams): Promise<any>;
|
|
30
|
+
listInterfaces(projectId: string, page?: number, limit?: number): Promise<any>;
|
|
31
|
+
importData(projectId: string, params: {
|
|
32
|
+
type: string;
|
|
33
|
+
merge: string;
|
|
34
|
+
json?: string;
|
|
35
|
+
url?: string;
|
|
36
|
+
}): Promise<any>;
|
|
37
|
+
searchApis(options: {
|
|
38
|
+
projectKeyword?: string;
|
|
39
|
+
nameKeyword?: string[] | string;
|
|
40
|
+
pathKeyword?: string[] | string;
|
|
41
|
+
tagKeyword?: string[] | string;
|
|
42
|
+
page?: number;
|
|
43
|
+
limit?: number;
|
|
44
|
+
maxProjects?: number;
|
|
45
|
+
}): Promise<{
|
|
46
|
+
total: number;
|
|
47
|
+
list: Array<ApiSearchResultItem & {
|
|
48
|
+
project_name?: string;
|
|
49
|
+
cat_name?: string;
|
|
50
|
+
}>;
|
|
51
|
+
}>;
|
|
52
|
+
private searchWithSingleKeyword;
|
|
53
|
+
private deduplicateResults;
|
|
54
|
+
getCategoryApis(projectId: string, catId: string): Promise<Array<ApiSearchResultItem>>;
|
|
55
|
+
listCategoryInterfaces(projectId: string, catId: string, page?: number, limit?: number): Promise<ApiSearchResponse>;
|
|
56
|
+
}
|
|
@@ -0,0 +1,432 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.YApiService = void 0;
|
|
37
|
+
const axios_1 = __importStar(require("axios"));
|
|
38
|
+
const logger_1 = require("./logger");
|
|
39
|
+
class YApiService {
|
|
40
|
+
baseUrl;
|
|
41
|
+
tokenMap;
|
|
42
|
+
defaultToken;
|
|
43
|
+
projectInfoCache = new Map();
|
|
44
|
+
categoryListCache = new Map();
|
|
45
|
+
logger;
|
|
46
|
+
constructor(baseUrl, token, logLevel = "info") {
|
|
47
|
+
this.baseUrl = baseUrl;
|
|
48
|
+
this.tokenMap = new Map();
|
|
49
|
+
this.defaultToken = "";
|
|
50
|
+
this.logger = new logger_1.Logger('YApiService', logLevel);
|
|
51
|
+
if (token) {
|
|
52
|
+
const tokenPairs = token.split(',');
|
|
53
|
+
for (const pair of tokenPairs) {
|
|
54
|
+
const [projectId, projectToken] = pair.trim().split(':');
|
|
55
|
+
if (projectId && projectToken) {
|
|
56
|
+
this.tokenMap.set(projectId, projectToken);
|
|
57
|
+
}
|
|
58
|
+
else if (!projectId.includes(':')) {
|
|
59
|
+
this.defaultToken = pair.trim();
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
this.logger.info(`YApiService已初始化,baseUrl=${baseUrl}`);
|
|
64
|
+
}
|
|
65
|
+
setProjectToken(projectId, token) {
|
|
66
|
+
if (!projectId || !token)
|
|
67
|
+
return;
|
|
68
|
+
this.tokenMap.set(String(projectId), String(token));
|
|
69
|
+
}
|
|
70
|
+
setProjectTokens(tokens, options = {}) {
|
|
71
|
+
const overwrite = options.overwrite !== false;
|
|
72
|
+
tokens.forEach((token, projectId) => {
|
|
73
|
+
const pid = String(projectId);
|
|
74
|
+
if (!pid || !token)
|
|
75
|
+
return;
|
|
76
|
+
if (!overwrite && this.tokenMap.has(pid))
|
|
77
|
+
return;
|
|
78
|
+
this.tokenMap.set(pid, String(token));
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
getConfiguredProjectIds() {
|
|
82
|
+
return Array.from(this.tokenMap.keys());
|
|
83
|
+
}
|
|
84
|
+
getProjectInfoCache() {
|
|
85
|
+
return this.projectInfoCache;
|
|
86
|
+
}
|
|
87
|
+
getCategoryListCache() {
|
|
88
|
+
return this.categoryListCache;
|
|
89
|
+
}
|
|
90
|
+
getToken(projectId) {
|
|
91
|
+
return this.tokenMap.get(projectId) || this.defaultToken;
|
|
92
|
+
}
|
|
93
|
+
async request(endpoint, params = {}, projectId, method = "GET", options = {}) {
|
|
94
|
+
try {
|
|
95
|
+
this.logger.debug(`调用 ${this.baseUrl}${endpoint} 方法: ${method}`);
|
|
96
|
+
const token = projectId ? this.getToken(projectId) : this.defaultToken;
|
|
97
|
+
if (!token) {
|
|
98
|
+
const pid = projectId ? `projectId=${projectId}` : "projectId=未提供";
|
|
99
|
+
throw new Error(`未配置 token(${pid})。如使用全局模式,请先调用 yapi_update_token 生成本地缓存;或通过 --yapi-token / YAPI_TOKEN 配置项目 token`);
|
|
100
|
+
}
|
|
101
|
+
let response;
|
|
102
|
+
if (method === 'GET') {
|
|
103
|
+
response = await axios_1.default.get(`${this.baseUrl}${endpoint}`, {
|
|
104
|
+
params: {
|
|
105
|
+
...params,
|
|
106
|
+
token: token
|
|
107
|
+
}
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
const contentType = options.contentType || "json";
|
|
112
|
+
const body = {
|
|
113
|
+
...params,
|
|
114
|
+
token: token,
|
|
115
|
+
};
|
|
116
|
+
if (contentType === "form") {
|
|
117
|
+
const form = new URLSearchParams();
|
|
118
|
+
for (const [key, value] of Object.entries(body)) {
|
|
119
|
+
if (value === undefined || value === null)
|
|
120
|
+
continue;
|
|
121
|
+
if (typeof value === "string")
|
|
122
|
+
form.set(key, value);
|
|
123
|
+
else if (typeof value === "number" || typeof value === "boolean")
|
|
124
|
+
form.set(key, String(value));
|
|
125
|
+
else
|
|
126
|
+
form.set(key, JSON.stringify(value));
|
|
127
|
+
}
|
|
128
|
+
response = await axios_1.default.post(`${this.baseUrl}${endpoint}`, form, {
|
|
129
|
+
headers: { "Content-Type": "application/x-www-form-urlencoded" },
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
response = await axios_1.default.post(`${this.baseUrl}${endpoint}`, body);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
return response.data;
|
|
137
|
+
}
|
|
138
|
+
catch (error) {
|
|
139
|
+
if (error instanceof axios_1.AxiosError && error.response) {
|
|
140
|
+
throw {
|
|
141
|
+
status: error.response.status,
|
|
142
|
+
message: error.response.data?.errmsg || "未知错误",
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
throw new Error("与YApi服务器通信失败");
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
async getCategoryList(projectId) {
|
|
149
|
+
try {
|
|
150
|
+
if (this.categoryListCache.has(projectId)) {
|
|
151
|
+
return this.categoryListCache.get(projectId);
|
|
152
|
+
}
|
|
153
|
+
this.logger.debug(`从API获取项目分类列表,projectId=${projectId}`);
|
|
154
|
+
const response = await this.request("/api/interface/getCatMenu", { project_id: projectId }, projectId);
|
|
155
|
+
if (response.errcode !== 0) {
|
|
156
|
+
throw new Error(response.errmsg || "获取分类列表失败");
|
|
157
|
+
}
|
|
158
|
+
this.categoryListCache.set(projectId, response.data);
|
|
159
|
+
return response.data;
|
|
160
|
+
}
|
|
161
|
+
catch (error) {
|
|
162
|
+
this.logger.error(`获取项目分类列表失败, projectId=${projectId}:`, error);
|
|
163
|
+
throw error;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
async addCategory(projectId, name, desc = "") {
|
|
167
|
+
const response = await this.request("/api/interface/add_cat", { project_id: projectId, name, desc }, projectId, "POST", { contentType: "form" });
|
|
168
|
+
if (response?.errcode !== 0) {
|
|
169
|
+
throw new Error(response?.errmsg || "新增接口分类失败");
|
|
170
|
+
}
|
|
171
|
+
this.categoryListCache.delete(projectId);
|
|
172
|
+
return response.data;
|
|
173
|
+
}
|
|
174
|
+
async loadAllCategoryLists() {
|
|
175
|
+
const projectIds = Array.from(this.projectInfoCache.keys());
|
|
176
|
+
if (projectIds.length === 0) {
|
|
177
|
+
this.logger.info('项目信息未加载,无法加载分类列表');
|
|
178
|
+
return;
|
|
179
|
+
}
|
|
180
|
+
this.logger.info(`开始加载 ${projectIds.length} 个项目的分类列表...`);
|
|
181
|
+
try {
|
|
182
|
+
await Promise.all(projectIds.map(id => this.getCategoryList(id)));
|
|
183
|
+
this.logger.info(`已加载 ${this.categoryListCache.size} 个项目的分类列表`);
|
|
184
|
+
}
|
|
185
|
+
catch (error) {
|
|
186
|
+
this.logger.error('加载项目分类列表失败:', error);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
async getProjectInfo(projectId) {
|
|
190
|
+
try {
|
|
191
|
+
if (this.projectInfoCache.has(projectId)) {
|
|
192
|
+
return this.projectInfoCache.get(projectId);
|
|
193
|
+
}
|
|
194
|
+
this.logger.debug(`从API获取项目信息,projectId=${projectId}`);
|
|
195
|
+
const response = await this.request("/api/project/get", { id: projectId }, projectId);
|
|
196
|
+
if (response.errcode !== 0) {
|
|
197
|
+
throw new Error(response.errmsg || "获取项目信息失败");
|
|
198
|
+
}
|
|
199
|
+
this.projectInfoCache.set(projectId, response.data);
|
|
200
|
+
return response.data;
|
|
201
|
+
}
|
|
202
|
+
catch (error) {
|
|
203
|
+
this.logger.error(`获取项目信息失败, projectId=${projectId}:`, error);
|
|
204
|
+
throw error;
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
async loadAllProjectInfo() {
|
|
208
|
+
const projectIds = this.getConfiguredProjectIds();
|
|
209
|
+
if (projectIds.length === 0) {
|
|
210
|
+
this.logger.info('未配置项目ID,无法加载项目信息');
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
this.logger.info(`开始加载 ${projectIds.length} 个项目的信息...`);
|
|
214
|
+
try {
|
|
215
|
+
await Promise.all(projectIds.map(id => this.getProjectInfo(id)));
|
|
216
|
+
this.logger.info(`已加载 ${this.projectInfoCache.size} 个项目的信息`);
|
|
217
|
+
}
|
|
218
|
+
catch (error) {
|
|
219
|
+
this.logger.error('加载项目信息失败:', error);
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
async getInterfaceMenu(projectId) {
|
|
223
|
+
const response = await this.request("/api/interface/list_menu", { project_id: projectId }, projectId);
|
|
224
|
+
if (response?.errcode !== 0) {
|
|
225
|
+
throw new Error(response?.errmsg || "获取接口菜单列表失败");
|
|
226
|
+
}
|
|
227
|
+
return response.data;
|
|
228
|
+
}
|
|
229
|
+
async getApiInterface(projectId, id) {
|
|
230
|
+
try {
|
|
231
|
+
this.logger.debug(`获取接口详情,projectId=${projectId}, apiId=${id}`);
|
|
232
|
+
const response = await this.request("/api/interface/get", { id }, projectId);
|
|
233
|
+
if (response.errcode !== 0) {
|
|
234
|
+
throw new Error(response.errmsg || "获取接口详情失败");
|
|
235
|
+
}
|
|
236
|
+
return response.data;
|
|
237
|
+
}
|
|
238
|
+
catch (error) {
|
|
239
|
+
this.logger.error(`获取接口详情失败, projectId=${projectId}, apiId=${id}:`, error);
|
|
240
|
+
throw error;
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
async saveInterface(params) {
|
|
244
|
+
try {
|
|
245
|
+
const projectId = params.project_id;
|
|
246
|
+
const isAdd = !params.id;
|
|
247
|
+
this.logger.debug(`${isAdd ? '新增' : '更新'}接口, projectId=${projectId}, title=${params.title}`);
|
|
248
|
+
const endpoint = isAdd ? "/api/interface/add" : "/api/interface/up";
|
|
249
|
+
const response = await this.request(endpoint, params, projectId, 'POST');
|
|
250
|
+
if (response.errcode !== 0) {
|
|
251
|
+
throw new Error(response.errmsg || `${isAdd ? '新增' : '更新'}接口失败`);
|
|
252
|
+
}
|
|
253
|
+
return response;
|
|
254
|
+
}
|
|
255
|
+
catch (error) {
|
|
256
|
+
this.logger.error(`${params.id ? '更新' : '新增'}接口失败:`, error);
|
|
257
|
+
throw error;
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
async addInterface(params) {
|
|
261
|
+
const response = await this.request("/api/interface/add", params, params.project_id, "POST");
|
|
262
|
+
if (response.errcode !== 0) {
|
|
263
|
+
throw new Error(response.errmsg || "新增接口失败");
|
|
264
|
+
}
|
|
265
|
+
return response;
|
|
266
|
+
}
|
|
267
|
+
async updateInterface(params) {
|
|
268
|
+
const response = await this.request("/api/interface/up", params, params.project_id, "POST");
|
|
269
|
+
if (response.errcode !== 0) {
|
|
270
|
+
throw new Error(response.errmsg || "更新接口失败");
|
|
271
|
+
}
|
|
272
|
+
return response;
|
|
273
|
+
}
|
|
274
|
+
async saveInterfaceUnified(params) {
|
|
275
|
+
const response = await this.request("/api/interface/save", params, params.project_id, "POST");
|
|
276
|
+
if (response?.errcode !== 0) {
|
|
277
|
+
throw new Error(response?.errmsg || "保存接口失败");
|
|
278
|
+
}
|
|
279
|
+
return response;
|
|
280
|
+
}
|
|
281
|
+
async listInterfaces(projectId, page = 1, limit = 10) {
|
|
282
|
+
const response = await this.request("/api/interface/list", { project_id: projectId, page, limit }, projectId);
|
|
283
|
+
if (response?.errcode !== 0) {
|
|
284
|
+
throw new Error(response?.errmsg || "获取接口列表失败");
|
|
285
|
+
}
|
|
286
|
+
return response.data;
|
|
287
|
+
}
|
|
288
|
+
async importData(projectId, params) {
|
|
289
|
+
const response = await this.request("/api/open/import_data", params, projectId, "POST", { contentType: "form" });
|
|
290
|
+
if (response?.errcode !== 0) {
|
|
291
|
+
throw new Error(response?.errmsg || "导入数据失败");
|
|
292
|
+
}
|
|
293
|
+
return response.data;
|
|
294
|
+
}
|
|
295
|
+
async searchApis(options) {
|
|
296
|
+
const { projectKeyword, nameKeyword, pathKeyword, tagKeyword, page = 1, limit = 20, maxProjects = 5 } = options;
|
|
297
|
+
const nameKeywords = Array.isArray(nameKeyword) ? nameKeyword : nameKeyword ? [nameKeyword] : [];
|
|
298
|
+
const pathKeywords = Array.isArray(pathKeyword) ? pathKeyword : pathKeyword ? [pathKeyword] : [];
|
|
299
|
+
const tagKeywords = Array.isArray(tagKeyword) ? tagKeyword : tagKeyword ? [tagKeyword] : [];
|
|
300
|
+
this.logger.debug(`搜索接口 项目关键字: ${projectKeyword || '无'}, ` +
|
|
301
|
+
`接口名称关键字: ${nameKeywords.join(',')} ` +
|
|
302
|
+
`路径关键字: ${pathKeywords.join(',')} ` +
|
|
303
|
+
`标签关键字: ${tagKeywords.join(',')}`);
|
|
304
|
+
try {
|
|
305
|
+
await this.loadAllProjectInfo();
|
|
306
|
+
let projects = Array.from(this.projectInfoCache.values());
|
|
307
|
+
if (projectKeyword && projectKeyword.trim().length > 0) {
|
|
308
|
+
const keyword = projectKeyword.trim().toLowerCase();
|
|
309
|
+
projects = projects.filter(project => project.name.toLowerCase().includes(keyword) ||
|
|
310
|
+
project.desc.toLowerCase().includes(keyword) ||
|
|
311
|
+
String(project._id).includes(keyword));
|
|
312
|
+
}
|
|
313
|
+
if (projects.length > maxProjects) {
|
|
314
|
+
this.logger.info(`符合条件的项目过多,只搜索前 ${maxProjects} 个项目`);
|
|
315
|
+
projects = projects.slice(0, maxProjects);
|
|
316
|
+
}
|
|
317
|
+
if (projects.length === 0) {
|
|
318
|
+
this.logger.info('没有找到符合条件的项目');
|
|
319
|
+
return { total: 0, list: [] };
|
|
320
|
+
}
|
|
321
|
+
this.logger.info(`在 ${projects.length} 个项目中搜索接口...`);
|
|
322
|
+
let allResults = [];
|
|
323
|
+
for (const project of projects) {
|
|
324
|
+
const projectId = String(project._id);
|
|
325
|
+
for (const nameKey of nameKeywords.length ? nameKeywords : [""]) {
|
|
326
|
+
for (const pathKey of pathKeywords.length ? pathKeywords : [""]) {
|
|
327
|
+
for (const tagKey of tagKeywords.length ? tagKeywords : [""]) {
|
|
328
|
+
const queryParams = {};
|
|
329
|
+
if (nameKey)
|
|
330
|
+
queryParams.keyword = nameKey;
|
|
331
|
+
if (pathKey)
|
|
332
|
+
queryParams.path = pathKey;
|
|
333
|
+
if (tagKey)
|
|
334
|
+
queryParams.tag = [tagKey];
|
|
335
|
+
const projectResults = await this.searchWithSingleKeyword(projectId, queryParams, page, limit);
|
|
336
|
+
const resultsWithProjectInfo = await Promise.all(projectResults.list.map(async (item) => {
|
|
337
|
+
const result = {
|
|
338
|
+
...item,
|
|
339
|
+
project_name: project.name
|
|
340
|
+
};
|
|
341
|
+
try {
|
|
342
|
+
const catId = String(item.catid);
|
|
343
|
+
if (catId) {
|
|
344
|
+
const categories = await this.getCategoryList(projectId);
|
|
345
|
+
const category = categories.find(cat => String(cat._id) === catId);
|
|
346
|
+
if (category) {
|
|
347
|
+
result.cat_name = category.name;
|
|
348
|
+
}
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
catch (error) {
|
|
352
|
+
this.logger.debug(`无法获取分类名称,项目ID=${projectId}, 分类ID=${item.catid}:`, error);
|
|
353
|
+
}
|
|
354
|
+
return result;
|
|
355
|
+
}));
|
|
356
|
+
allResults = [...allResults, ...resultsWithProjectInfo];
|
|
357
|
+
}
|
|
358
|
+
}
|
|
359
|
+
}
|
|
360
|
+
}
|
|
361
|
+
const deduplicated = this.deduplicateResults(allResults);
|
|
362
|
+
const limitedResults = deduplicated.slice(0, limit);
|
|
363
|
+
this.logger.info(`共找到 ${deduplicated.length} 个符合条件的接口,显示 ${limitedResults.length} 个`);
|
|
364
|
+
return {
|
|
365
|
+
total: deduplicated.length,
|
|
366
|
+
list: limitedResults
|
|
367
|
+
};
|
|
368
|
+
}
|
|
369
|
+
catch (error) {
|
|
370
|
+
this.logger.error('搜索接口失败:', error);
|
|
371
|
+
throw error;
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
async searchWithSingleKeyword(projectId, queryParams, page, limit) {
|
|
375
|
+
try {
|
|
376
|
+
const params = {
|
|
377
|
+
project_id: projectId,
|
|
378
|
+
page,
|
|
379
|
+
limit,
|
|
380
|
+
...queryParams
|
|
381
|
+
};
|
|
382
|
+
const response = await this.request("/api/interface/list", params, projectId);
|
|
383
|
+
if (response.errcode !== 0) {
|
|
384
|
+
throw new Error(response.errmsg || "搜索接口失败");
|
|
385
|
+
}
|
|
386
|
+
return response.data;
|
|
387
|
+
}
|
|
388
|
+
catch (error) {
|
|
389
|
+
this.logger.debug(`在项目 ${projectId} 中使用关键字 ${JSON.stringify(queryParams)} 搜索接口失败:`, error);
|
|
390
|
+
return { total: 0, list: [] };
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
deduplicateResults(results) {
|
|
394
|
+
const seen = new Set();
|
|
395
|
+
return results.filter(item => {
|
|
396
|
+
const id = String(item._id);
|
|
397
|
+
if (seen.has(id)) {
|
|
398
|
+
return false;
|
|
399
|
+
}
|
|
400
|
+
seen.add(id);
|
|
401
|
+
return true;
|
|
402
|
+
});
|
|
403
|
+
}
|
|
404
|
+
async getCategoryApis(projectId, catId) {
|
|
405
|
+
try {
|
|
406
|
+
const response = await this.listCategoryInterfaces(projectId, catId, 1, 100);
|
|
407
|
+
if (response.errcode !== 0) {
|
|
408
|
+
throw new Error(response.errmsg || "获取分类接口列表失败");
|
|
409
|
+
}
|
|
410
|
+
return response.data.list;
|
|
411
|
+
}
|
|
412
|
+
catch (error) {
|
|
413
|
+
this.logger.error(`获取分类接口列表失败, projectId=${projectId}, catId=${catId}:`, error);
|
|
414
|
+
throw error;
|
|
415
|
+
}
|
|
416
|
+
}
|
|
417
|
+
async listCategoryInterfaces(projectId, catId, page = 1, limit = 10) {
|
|
418
|
+
const params = {
|
|
419
|
+
project_id: projectId,
|
|
420
|
+
catid: catId,
|
|
421
|
+
page,
|
|
422
|
+
limit,
|
|
423
|
+
};
|
|
424
|
+
const response = await this.request("/api/interface/list_cat", params, projectId);
|
|
425
|
+
if (response.errcode !== 0) {
|
|
426
|
+
throw new Error(response.errmsg || "获取分类接口列表失败");
|
|
427
|
+
}
|
|
428
|
+
return response;
|
|
429
|
+
}
|
|
430
|
+
}
|
|
431
|
+
exports.YApiService = YApiService;
|
|
432
|
+
//# sourceMappingURL=api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/services/yapi/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { YApiSessionCookie } from "./authCache";
|
|
2
|
+
export declare class YApiAuthService {
|
|
3
|
+
private readonly baseUrl;
|
|
4
|
+
private readonly email;
|
|
5
|
+
private readonly password;
|
|
6
|
+
private readonly logger;
|
|
7
|
+
private readonly cache;
|
|
8
|
+
constructor(baseUrl: string, email: string, password: string, logLevel?: string);
|
|
9
|
+
loadCachedProjectTokens(): Map<string, string>;
|
|
10
|
+
private getCookieHeader;
|
|
11
|
+
private isSessionValid;
|
|
12
|
+
login(force?: boolean): Promise<YApiSessionCookie>;
|
|
13
|
+
private cookieRequest;
|
|
14
|
+
private listGroups;
|
|
15
|
+
private listProjectsInGroup;
|
|
16
|
+
private getProjectDetail;
|
|
17
|
+
refreshProjectTokens(options?: {
|
|
18
|
+
forceLogin?: boolean;
|
|
19
|
+
}): Promise<{
|
|
20
|
+
tokens: Map<string, string>;
|
|
21
|
+
projects: any[];
|
|
22
|
+
groups: any[];
|
|
23
|
+
}>;
|
|
24
|
+
}
|