":"acp-proxy failure","detail":"Error: upstream request failed: kind=connect-tim...
错误信息
502 {"error":"acp-proxy failure","detail":"Error: upstream request failed: kind=connect-timeout code=UND_ERR_CONNECT_TIMEOUT message=fetch failed <- Connect Timeout Error (attempted address: <private-host>:443, timeout: 10000ms) url=https://<private-host>/v1/messages proxy=direct hint=TCP handshake never completed — upstream/proxy unreachable or blackholed; a bounded transparent replay may be attempted (BILI_REPLAY_RETRY_MAX)"}
AI 解决方案
🌐 错误翻译
原文:502 {"error":"acp-proxy failure","detail":"Error: upstream request failed: kind=connect-timeout code=UND_ERR_CONNECT_TIMEOUT message=fetch failed <- Connect Timeout Error (attempted address: <private-host>:443, timeout: 10000ms) url=https://<private-host>/v1/messages proxy=direct hint=TCP handshake never completed — upstream/proxy unreachable or blackholed; a bounded transparent replay may be attempted (BILI_REPLAY_RETRY_MAX)"}
译文:502 {"error":"acp-proxy故障","detail":"错误:上游请求失败:类型=连接超时 代码=UND_ERR_CONNECT_TIMEOUT 消息= fetch失败 <- 连接超时错误(尝试访问地址:<私有主机>:443,超时:10000ms) url=https://<私有主机>/v1/messages 代理=直连 提示= TCP握手从未完成 — 上游/代理不可达或被黑洞;可以尝试有限次数的透明重放(BILI_REPLAY_RETRY_MAX)"}
🎯 原因分析
<private-host>:443)时发生连接超时,TCP握手未能完成💡 解决方案
检查并修复上游服务可用性或调整网络配置:
// 1. 检查目标地址与端口是否正确
const targetUrl = 'https://<private-host>/v1/messages';
// 2. 增加超时时间(根据实际网络环境调整)
const controller = new AbortController();
const timeoutId = setTimeout(() => controller.abort(), 30000); // 延长至30秒
try {
const response = await fetch(targetUrl, {
signal: controller.signal,
proxy: 'direct' // 确认是否需要代理
});
clearTimeout(timeoutId);
} catch (error) {
clearTimeout(timeoutId);
if (error.name === 'AbortError') {
console.error('请求超时,请检查上游服务是否可达');
}
}
🛡️ 预防措施
BILI_REPLAY_RETRY_MAX提示),避免一次性请求失败导致服务中断