Agent 执行失败: Failed to execute 'fetch' on 'Window': Failed to parse URL from http...
🚨 错误信息
Agent 执行失败: Failed to execute 'fetch' on 'Window': Failed to parse URL from https://www.dmxapi.cn:streamGenerateContent
🤖 AI解决方案
报错分析报告
1. 错误翻译
原文:Failed to execute 'fetch' on 'Window': Failed to parse URL from https://www.dmxapi.cn:streamGenerateContent
译文:在 Window 对象上执行 'fetch' 失败:无法从 https://www.dmxapi.cn:streamGenerateContent 解析 URL
2. 原因分析
这是一个 URL 地址解析错误,根本原因是 端口号分隔符使用错误。代码中使用了冒号: 而不是正确的端口号分隔符斜杠 /,导致 URL 解析器将 "streamGenerateContent" 误认为是端口号。
错误位置:fetch API 调用时的 URL 参数
3. 解决方案
// 错误写法
fetch('https://www.dmxapi.cn:streamGenerateContent')
// 正确写法
fetch('https://www.dmxapi.cn/streamGenerateContent')
如果这是一个 REST API 端点:
// 正确的 API 端点格式
const apiUrl = 'https://www.dmxapi.cn/api/streamGenerateContent';
fetch(apiUrl, {
method: 'POST', // 或 GET,根据实际需求
headers: {
'Content-Type': 'application/json'
}
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('请求失败:', error));
4. ️ 预防措施
- URL 格式验证:在构建 URL 时使用专门的 URL 构造器或验证函数
// 使用 URL 构造器验证
try {
const url = new URL('https://www.dmxapi.cn/streamGenerateContent');
console.log('URL 格式正确');
} catch (error) {
console.error('URL 格式错误:', error);
}
/ 而不是 :提示:冒号 : 用于端口号(如 :8080),斜杠 / 用于路径分隔