You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Node.js中Axios土耳其字符转换问题及自定义函数解决方法

解决Node.js Axios中的土耳其字符编码异常问题

我在使用Node.js的Axios时遇到土耳其字符编码异常:期望输出为"Öncü",但实际输出的相同文本存在编码层面的显示异常(推测是响应数据编码与Axios默认解析逻辑不匹配导致)。

最终通过编写自定义编码转换函数解决了问题,核心实现代码如下:

function convertTurkishEncoding(buffer) {
  return Buffer.from(buffer, 'iso-8859-9').toString('utf8');
}

// 结合Axios的使用方式
axios.get('目标接口URL', { responseType: 'arraybuffer' })
  .then(res => {
    const decodedContent = convertTurkishEncoding(res.data);
    console.log(decodedContent); // 正确输出"Öncü"
  })
  .catch(err => console.error(err));

解决思路

Axios默认会以UTF-8编码解析响应内容,但如果接口返回的是土耳其地区常用的ISO-8859-9(Latin-5)编码数据,直接解析就会出现字符显示异常。通过设置responseType: 'arraybuffer'获取原始二进制数据,再手动用ISO-8859-9编码读取并转换为UTF-8,就能正确显示土耳其特殊字符。

内容的提问来源于stack exchange,提问作者Mehmet

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 17:50:33