ios请求头解决参数中文乱码_axios请求GBK页面中文乱码解决方法

在使用vue和axios请求GBK编码的网易新闻数据时遇到了中文乱码问题。尝试设置请求头未能解决,因为axios对GET请求头的设置存在限制。通过修改responseType为'blob'并配合transformResponse进行GBK转UTF-8成功解决了乱码问题。
摘要由CSDN通过智能技术生成

这两天学习vue写demo,没有服务器,便抓了网易新闻的数据。vue cli3.0 + 官方推荐的axios,设置了一下代理,十分方便的在dev环境下请求到了数据。然而还没来得及高兴:

惊了!什么情况?!去网易新闻官方的页面看来下,原来人家的是GBK页面,不是utf-8的,而axios默认是utf-8。

一开始认为,设置请求头,使服务器返回contentType为 'application/x-www-form-urlencoded;charset=utf-8',网上大部分文章也是这么说的。

那就改一下吧?然后一天的时间过去了...emmm....说起来你可能不信,据网上的大牛说axios的源码中,对get请求设置进行了很不友好的生硬处理,使之一切对get请求头的设置无效!这个bug据说存在了很长时间了,下面是github issues关于它的描述

https://github.com/axios/axios/issues/362

英文不是很好,用的翻译功能看的。

试了很多帖子中的方法,包括什么:params.inCharset='utf-8',params.outCharset='utf-8'

还有设置headers里加上'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8'

以及添加请求拦截器什么的,各种方法我都试了,然而对我

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值