minimax api 中文乱码是因客户端未正确使用 utf-8 解码所致,实际响应体恒为 utf-8;应检查响应头、强制 utf-8 解码、验证 json 前字符串、统一压测工具编码、确保请求参数 utf-8 序列化。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您调用 Minimax API 时返回的中文内容显示为乱码,通常是由于客户端未正确识别或强制使用 UTF-8 编码解码响应体所致。Minimax API 实际响应体始终为 UTF-8 编码,但若 HTTP 响应头中缺失 charset=utf-8 声明,或客户端库默认采用本地编码(如 GBK、ISO-8859-1)解析,就会导致字节流错解,出现、□或异常符号。以下是多种独立、可立即生效的修复方法:
一、检查并修正响应头中的 Content-Type 声明
HTTP 响应头中的 Content-Type 字段是客户端推断编码的关键依据。若该字段缺失 charset 子句或声明错误,多数客户端将跳过 UTF-8 解码逻辑,直接以系统默认编码解析原始字节,从而引发乱码。
1、使用 curl 命令附加 -v 参数发起请求,完整输出请求与响应头信息:
curl -v "https://api.minimax.chat/v1/text/chatcompletion" -H "Authorization: Bearer your_token" -H "Content-Type: application/json" -d '{"model": "abab6.5-chat", "messages": [{"role": "user", "content": "你好"}]}'
2、在响应头区域查找 Content-Type 行,确认其值是否包含 charset=utf-8,例如:Content-Type: application/json; charset=utf-8
3、若响应头中未出现 charset=utf-8,或显示为 charset=iso-8859-1 等其他值,请忽略该声明,始终以 UTF-8 解码 response.content 或原始字节流,因为 Minimax API 的实际响应体编码恒为 UTF-8。
二、强制使用 UTF-8 解码原始响应体
绕过客户端自动编码推断机制,直接对原始字节流执行 UTF-8 解码,可彻底规避因 Header 缺失或误判导致的乱码问题。此方法不依赖 Content-Type 声明,适用于所有主流语言环境。
1、在 Python 中使用 requests 库时,禁止调用 response.text,改用 response.content 显式解码:
response = requests.post(url, headers=headers, json=payload)
text = response.content.decode('utf-8')
2、在 JavaScript 中使用 fetch 时,避免 response.text(),改用 ArrayBuffer + TextDecoder:
const arrayBuffer = await response.arrayBuffer()
const decoder = new TextDecoder('utf-8')
const text = decoder.decode(arrayBuffer)
3、在 Java 中使用 OkHttp 时,调用 string(StandardCharsets.UTF_8) 而非无参 string():
String body = response.body().string(StandardCharsets.UTF_8)
三、验证 JSON 解析前的原始字符串状态
乱码可能发生在两个关键节点:一是网络接收后解码阶段,二是 JSON 解析阶段。若解码后的字符串已含或U+FFFD替换符,则问题出在解码环节;若字符串看似正常但 JSON.parse() 报错,则需排查 BOM、零宽字符或非法控制符等干扰项。
1、获取解码后的字符串后,立即检查其首字符是否为 U+FEFF(BOM),如有,需在解析前调用 .replace(/\uFEFF/g, '') 清除。
MiniMax Token Plan 工具——支持图片生成、图像理解、语音合成和视频生成。直接调用 MiniMax 官方 API,纯 JavaScript 实现,无需外部 MCP 服务器。
2、将解码后字符串复制到支持 Unicode 可视化的编辑器(如 VS Code),开启“显示不可见字符”,确认是否存在 U+200B(零宽空格)、U+00A0(不间断空格) 或其他非打印控制字符。
3、若发现异常 Unicode 序列(如 \ud83d\ude00 后续缺失),说明服务端返回了截断的 UTF-16 代理对,此时应联系 Minimax 支持团队确认响应生成链路是否异常。
四、统一配置 JMeter 等压测工具的默认编码
JMeter 默认使用 ISO-8859-1 解析响应,对 UTF-8 中文响应天然不兼容。若在性能测试中复现乱码,需全局修改其默认解码行为,而非逐个请求设置。
1、打开 JMeter 安装目录下的 bin/jmeter.properties 文件。
2、定位并取消注释以下行,将其值设为 UTF-8:
sampleresult.default.encoding=UTF-8
3、保存文件并重启 JMeter,此后所有 HTTP 请求采样器均会以 UTF-8 解析响应体,无需额外配置每个请求的“响应数据文本编码”选项。
五、校验请求参数编码一致性(防止反向污染)
若请求体(如 JSON payload)中含中文但未按 UTF-8 编码序列化,部分中间件或网关可能在转发时二次编码,导致服务端收到乱码输入,进而返回格式异常的响应。因此,确保请求发出前已完成正确编码同样关键。
1、在 Python 中构造 JSON 请求体时,确保 json.dumps() 使用 ensure_ascii=False 并指定 encoding='utf-8':
payload_str = json.dumps(payload, ensure_ascii=False).encode('utf-8')
2、在 JavaScript 中使用 fetch 发送 JSON 时,必须显式设置 headers 中的 Content-Type 为 application/json;charset=utf-8:
headers: { 'Content-Type': 'application/json; charset=utf-8' }
3、若通过表单(x-www-form-urlencoded)提交含中文参数,须对每个 value 单独执行 encodeURIComponent(),且整体请求体需以 UTF-8 编码传输,不可依赖浏览器默认行为。
大量免费API接口:立即使用
涵盖生活服务API、金融科技API、企业工商API、等相关的API接口服务。免费API接口可安全、合规地连接上下游,为数据API应用能力赋能!










