fix: SearXNG max_results 以面板配置为准,不再与AI传入比较
This commit is contained in:
@@ -456,7 +456,6 @@ async function handleWebSearchSearxng(
|
||||
const cfgTimeRange = getSetting<string>('searxng_time_range', '');
|
||||
const effectiveTimeRange = timeRange || cfgTimeRange;
|
||||
const cfgMaxResults = getSetting<number>('searxng_max_results', 20);
|
||||
const effectiveMaxResults = Math.min(maxResults, cfgMaxResults);
|
||||
|
||||
const format = getSetting<string>('searxng_format', 'json');
|
||||
const isHtml = format === 'html';
|
||||
@@ -489,8 +488,8 @@ async function handleWebSearchSearxng(
|
||||
if (isHtml) {
|
||||
const html = await resp.text();
|
||||
const text = htmlToText(html);
|
||||
const truncated = effectiveMaxResults > 0 && text.length > effectiveMaxResults * 500;
|
||||
const content = truncated ? text.slice(0, effectiveMaxResults * 500) + '\n...(已截断)' : text;
|
||||
const truncated = cfgMaxResults > 0 && text.length > cfgMaxResults * 500;
|
||||
const content = truncated ? text.slice(0, cfgMaxResults * 500) + '\n...(已截断)' : text;
|
||||
sendLog('success', `🔍 SearXNG HTML 完成`, `${text.length} 字符`);
|
||||
return {
|
||||
success: true,
|
||||
@@ -518,7 +517,7 @@ async function handleWebSearchSearxng(
|
||||
unresponsive_engines?: Array<[string, string]>;
|
||||
};
|
||||
|
||||
const rawResults = (data.results || []).slice(0, effectiveMaxResults);
|
||||
const rawResults = (data.results || []).slice(0, cfgMaxResults);
|
||||
if (rawResults.length === 0) {
|
||||
return { success: false, error: 'SearXNG 未返回任何结果,请尝试其他关键词或调整搜索引擎配置' };
|
||||
}
|
||||
@@ -554,7 +553,7 @@ async function handleWebSearchSearxng(
|
||||
weight: 80,
|
||||
reachable: true,
|
||||
})),
|
||||
effectiveMaxResults,
|
||||
cfgMaxResults,
|
||||
false,
|
||||
engineStats
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user