code: 400 - {'error': {'message': 'invalid request:\n- messages[1].content: got ...
错误信息
Error code: 400 - {'error': {'message': 'invalid request:\n- messages[1].content: got array, want string\n- messages[1].content: minItems: got 0, want 1', 'type': 'bad_response_status_code', 'param': '', 'code': 'bad_response_status_code'}}
AI 解决方案
📋 报错分析
1. 🌐 错误翻译
原文:invalid request:
- messages[1].content: got array, want string
- messages[1].content: minItems: got 0, want 1
译文:无效请求:
- messages[1].content:收到数组,但需要字符串
- messages[1].content:最小项数:收到0,需要1
2. 🎯 原因分析
messages[1].content字段存在两个问题:1. 该字段传入了数组类型,但API要求必须是字符串类型
2. 该字段传入的数组为空(0个元素),但API要求至少包含1个元素
messages[1])的content字段配置错误3. 💡 解决方案
假设原始请求代码结构如下,修复后的代码需确保
content字段为非空字符串,而非数组:// 修复前的错误请求(示意)
const response = await fetch('https://api.example.com/v1/chat/completions', {
method: 'POST',
body: JSON.stringify({
messages: [
{ role: 'user', content: '你好' },
{ role: 'assistant', content: [] } // 错误:content为空数组
]
})
});
// 修复后的请求代码
const response = await fetch('https://api.example.com/v1/chat/completions', {
method: 'POST',
body: JSON.stringify({
messages: [
{ role: 'user', content: '你好' },
{ role: 'assistant', content: '有什么可以帮助您的?' } // 正确:content为非空字符串
]
})
});