fix:优化知识库页面错误信息

This commit is contained in:
rainv123
2025-11-10 18:41:03 +08:00
parent ee0d89d8d2
commit ab5e91c07b
6 changed files with 51 additions and 22 deletions
@@ -281,7 +281,7 @@ public class KnowledgeBaseServiceImpl extends BaseServiceImpl<KnowledgeBaseDao,
apiDeleteSuccess = true; apiDeleteSuccess = true;
} catch (Exception e) { } catch (Exception e) {
log.error("删除RAGFlow数据集失败: {}", e.getMessage()); log.error("删除RAGFlow数据集失败: {}", e.getMessage());
throw new RenException(ErrorCode.RAG_API_ERROR, "删除RAGFlow数据集失败: " + e.getMessage()); throw e;
} }
} else { } else {
log.warn("datasetId或ragModelId为空,跳过RAGFlow删除"); log.warn("datasetId或ragModelId为空,跳过RAGFlow删除");
@@ -427,8 +427,9 @@ public class KnowledgeBaseServiceImpl extends BaseServiceImpl<KnowledgeBaseDao,
log.debug("RAGFlow API响应内容: {}", response.getBody()); log.debug("RAGFlow API响应内容: {}", response.getBody());
if (!response.getStatusCode().is2xxSuccessful()) { if (!response.getStatusCode().is2xxSuccessful()) {
log.error("RAGFlow API调用失败,状态码: {}, 响应内容: {}", response.getStatusCode(), response.getBody()); String errorMessage = response.getStatusCode() + ", 响应内容: " + response.getBody();
throw new RenException(ErrorCode.RAG_API_ERROR, response.getStatusCode().toString()); log.error(errorMessage);
throw new RenException(ErrorCode.RAG_API_ERROR, errorMessage);
} }
// 解析响应体,提取datasetId // 解析响应体,提取datasetId
@@ -459,16 +460,22 @@ public class KnowledgeBaseServiceImpl extends BaseServiceImpl<KnowledgeBaseDao,
} }
} else { } else {
// 如果响应码不为0,说明API调用失败 // 如果响应码不为0,说明API调用失败
log.error("RAGFlow API调用失败,响应码: {}, 响应内容: {}", code, message); String errorMessage = "RAGFlow API调用失败,响应码: " + code + ", 消息: "
throw new RenException(ErrorCode.RAG_API_ERROR, + (message != null ? message : "未知错误");
"RAGFlow API调用失败,响应码: " + code + ", 消息: " + message); log.error(errorMessage);
throw new RenException(ErrorCode.RAG_API_ERROR, errorMessage);
} }
log.info("从RAGFlow API响应中解析出datasetId: {}", datasetId); log.info("从RAGFlow API响应中解析出datasetId: {}", datasetId);
log.debug("完整响应内容: {}", responseBody); log.debug("完整响应内容: {}", responseBody);
} catch (Exception e) { } catch (Exception e) {
log.error("解析RAGFlow API响应失败: {}", e.getMessage(), e); log.error("解析RAGFlow API响应失败: {}", e.getMessage(), e);
throw new RenException(ErrorCode.RAG_API_ERROR, "解析响应失败: " + e.getMessage()); // 如果解析失败,但响应体不为空,尝试直接使用响应体作为错误信息
String errorMessage = responseBody;
if (e.getMessage() != null) {
errorMessage += ",解析错误: " + e.getMessage();
}
throw new RenException(ErrorCode.RAG_API_ERROR, errorMessage);
} }
} }
@@ -520,8 +527,9 @@ public class KnowledgeBaseServiceImpl extends BaseServiceImpl<KnowledgeBaseDao,
log.debug("RAGFlow API响应内容: {}", response.getBody()); log.debug("RAGFlow API响应内容: {}", response.getBody());
if (!response.getStatusCode().is2xxSuccessful()) { if (!response.getStatusCode().is2xxSuccessful()) {
log.error("RAGFlow API调用失败,状态码: {}, 响应内容: {}", response.getStatusCode(), response.getBody()); String errorMessage = response.getStatusCode() + ", 响应内容: " + response.getBody();
throw new RenException(ErrorCode.RAG_API_ERROR); log.error(errorMessage);
throw new RenException(ErrorCode.RAG_API_ERROR, errorMessage);
} }
// 解析响应体,验证操作是否真正成功 // 解析响应体,验证操作是否真正成功
@@ -533,12 +541,19 @@ public class KnowledgeBaseServiceImpl extends BaseServiceImpl<KnowledgeBaseDao,
String message = (String) responseMap.get("message"); String message = (String) responseMap.get("message");
if (code != null && code != 0) { if (code != null && code != 0) {
log.error("RAGFlow API调用失败,响应码: {}, 消息: {}", code, message); String errorMessage = "RAGFlow API调用失败,响应码: " + code + ", 消息: "
throw new RenException(ErrorCode.RAG_API_ERROR, "RAGFlow API调用失败: " + message); + (message != null ? message : "未知错误");
log.error(errorMessage);
throw new RenException(ErrorCode.RAG_API_ERROR, errorMessage);
} }
} catch (Exception e) { } catch (Exception e) {
log.error("解析RAGFlow API响应失败: {}", e.getMessage(), e); log.error("解析RAGFlow API响应失败: {}", e.getMessage(), e);
throw new RenException(ErrorCode.RAG_API_ERROR, "解析响应失败: " + e.getMessage()); // 如果解析失败,但响应体不为空,尝试直接使用响应体作为错误信息
String errorMessage = responseBody;
if (e.getMessage() != null) {
errorMessage += ",解析错误: " + e.getMessage();
}
throw new RenException(ErrorCode.RAG_API_ERROR, errorMessage);
} }
} }
@@ -581,8 +596,9 @@ public class KnowledgeBaseServiceImpl extends BaseServiceImpl<KnowledgeBaseDao,
log.debug("RAGFlow API响应内容: {}", response.getBody()); log.debug("RAGFlow API响应内容: {}", response.getBody());
if (!response.getStatusCode().is2xxSuccessful()) { if (!response.getStatusCode().is2xxSuccessful()) {
log.error("RAGFlow API调用失败,状态码: {}, 响应内容: {}", response.getStatusCode(), response.getBody()); String errorMessage = response.getStatusCode() + ", 响应内容: " + response.getBody();
throw new RenException(ErrorCode.RAG_API_ERROR); log.error(errorMessage);
throw new RenException(ErrorCode.RAG_API_ERROR, errorMessage);
} }
// 解析响应体,验证操作是否真正成功 // 解析响应体,验证操作是否真正成功
@@ -594,12 +610,19 @@ public class KnowledgeBaseServiceImpl extends BaseServiceImpl<KnowledgeBaseDao,
String message = (String) responseMap.get("message"); String message = (String) responseMap.get("message");
if (code != null && code != 0) { if (code != null && code != 0) {
log.error("RAGFlow API调用失败,响应码: {}, 消息: {}", code, message); String errorMessage = "RAGFlow API调用失败,响应码: " + code + ", 消息: "
throw new RenException(ErrorCode.RAG_API_ERROR, "RAGFlow API调用失败: " + message); + (message != null ? message : "未知错误");
log.error(errorMessage);
throw new RenException(ErrorCode.RAG_API_ERROR, errorMessage);
} }
} catch (Exception e) { } catch (Exception e) {
log.error("解析RAGFlow API响应失败: {}", e.getMessage(), e); log.error("解析RAGFlow API响应失败: {}", e.getMessage(), e);
throw new RenException(ErrorCode.RAG_API_ERROR, "解析响应失败: " + e.getMessage()); // 如果解析失败,但响应体不为空,尝试直接使用响应体作为错误信息
String errorMessage = responseBody;
if (e.getMessage() != null) {
errorMessage += ",解析错误: " + e.getMessage();
}
throw new RenException(ErrorCode.RAG_API_ERROR, errorMessage);
} }
} }
@@ -173,7 +173,7 @@
10164=RAG\u914D\u7F6E\u672A\u627E\u5230 10164=RAG\u914D\u7F6E\u672A\u627E\u5230
10165=RAG\u914D\u7F6E\u7C7B\u578B\u9519\u8BEF 10165=RAG\u914D\u7F6E\u7C7B\u578B\u9519\u8BEF
10166=\u9ED8\u8BA4RAG\u914D\u7F6E\u672A\u627E\u5230 10166=\u9ED8\u8BA4RAG\u914D\u7F6E\u672A\u627E\u5230
10167=RAG\u63A5\u53E3\u9519\u8BEF\uFF0C{0} 10167=RAG\u914d\u7f6e\u7f3a\u5c11\u5fc5\u8981\u53c2\u6570\uFF0C{0}
10168=\u4E0A\u4F20\u6587\u4EF6\u5931\u8D25 10168=\u4E0A\u4F20\u6587\u4EF6\u5931\u8D25
10169=\u60A8\u6CA1\u6709\u6743\u9650\u64CD\u4F5C\u8BE5\u8BB0\u5F55 10169=\u60A8\u6CA1\u6709\u6743\u9650\u64CD\u4F5C\u8BE5\u8BB0\u5F55
10170=\u77E5\u8BC6\u5E93\u540D\u79F0\u91CD\u590D 10170=\u77E5\u8BC6\u5E93\u540D\u79F0\u91CD\u590D
@@ -173,7 +173,7 @@
10164=RAG configuration not found 10164=RAG configuration not found
10165=RAG configuration type error 10165=RAG configuration type error
10166=Default RAG configuration not found 10166=Default RAG configuration not found
10167=RAG API interface error: {0} 10167=RAG configuration missing necessary parameters: {0}
10168=Upload file failed 10168=Upload file failed
10169=No permission to operate this knowledge base 10169=No permission to operate this knowledge base
10170=Knowledge base name already exists 10170=Knowledge base name already exists
@@ -173,7 +173,7 @@
10164=RAG\u914D\u7F6E\u672A\u627E\u5230 10164=RAG\u914D\u7F6E\u672A\u627E\u5230
10165=RAG\u914D\u7F6E\u7C7B\u578B\u9519\u8BEF 10165=RAG\u914D\u7F6E\u7C7B\u578B\u9519\u8BEF
10166=\u9ED8\u8BA4RAG\u914D\u7F6E\u672A\u627E\u5230 10166=\u9ED8\u8BA4RAG\u914D\u7F6E\u672A\u627E\u5230
10167=RAG\u63A5\u53E3\u9519\u8BEF\uFF0C{0} 10167=RAG\u914d\u7f6e\u7f3a\u5c11\u5fc5\u8981\u53c2\u6570\uFF0C{0}
10168=\u4E0A\u4F20\u6587\u4EF6\u5931\u8D25 10168=\u4E0A\u4F20\u6587\u4EF6\u5931\u8D25
10169=\u60A8\u6CA1\u6709\u6743\u9650\u64CD\u4F5C\u8BE5\u8BB0\u5F55 10169=\u60A8\u6CA1\u6709\u6743\u9650\u64CD\u4F5C\u8BE5\u8BB0\u5F55
10170=\u77E5\u8BC6\u5E93\u540D\u79F0\u91CD\u590D 10170=\u77E5\u8BC6\u5E93\u540D\u79F0\u91CD\u590D
@@ -173,7 +173,7 @@
10164=RAG\u914D\u7F6E\u672A\u627E\u5230 10164=RAG\u914D\u7F6E\u672A\u627E\u5230
10165=RAG\u914D\u7F6E\u985E\u578B\u932F\u8AA4 10165=RAG\u914D\u7F6E\u985E\u578B\u932F\u8AA4
10166=\u9810\u8A2DRAG\u914D\u7F6E\u672A\u627E\u5230 10166=\u9810\u8A2DRAG\u914D\u7F6E\u672A\u627E\u5230
10167=RAG\u63A5\u53E3\u932F\u8AA4\uFF0C{0} 10167=RAG\u914d\u7f6e\u6f0f\u5c11\u5fc5\u8981\u53c2\u6570\uFF0C{0}
10168=\u4E0A\u50B3\u6587\u4EF6\u5931\u6557 10168=\u4E0A\u50B3\u6587\u4EF6\u5931\u6557
10169=\u60A8\u6C92\u6709\u6B0A\u9650\u64CD\u4F5C\u8A72\u8A18\u9304 10169=\u60A8\u6C92\u6709\u6B0A\u9650\u64CD\u4F5C\u8A72\u8A18\u9304
10170=\u77E5\u8B58\u5EAB\u540D\u7A31\u91CD\u8907 10170=\u77E5\u8B58\u5EAB\u540D\u7A31\u91CD\u8907
@@ -401,7 +401,13 @@ export default {
}, },
(err) => { (err) => {
this.loading = false; this.loading = false;
this.$message.error(this.$t('knowledgeFileUpload.getListFailed')); console.log('Error callback received:', err);
if (err && err.data) {
console.log('后端返回错误消息:', err.data.msg || err.msg);
this.$message.error(err.data.msg || err.msg || this.$t('knowledgeFileUpload.getListFailed'));
} else {
this.$message.error(this.$t('knowledgeFileUpload.getListFailed'));
}
console.error('获取文档列表失败:', err); console.error('获取文档列表失败:', err);
this.fileList = []; this.fileList = [];
this.total = 0; this.total = 0;