node的http.request拿到的数据乱码怎么办?

发布于 2022-09-11 14:59:01 字数 993 浏览 21 评论 0

serer.js
本想用下面的方法,做代理。我能从本地拿测试环境的数据,在本地调试。
options 相关的配置

let request = http.request(options, function(response){
                response.on('data', function(chunk) {
                    data = data + chunk
                })
                response.on('end', function() {
                    try {
                        data = JSON.parse(data)
                    } catch(err) {
                        console.log(err)
                    }
                    res.json && res.json(data) || (res.body = data)
                })
            })

            request.on('error', function(e) {
                console.log('Error', e)
            })
            request.write(postdata)
            request.end()

用这种方法 拿其他网站的数据是json,是正常的。
但是拿我们公司的测试环境的数据就变成了:

clipboard.png

这个样子。
直接在浏览器里请求连接是正常的。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦行七里 2022-09-18 14:59:01

你从头信息里面看一下编码格式,可能是gb2312的或gbk的,是的话你需要转码

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文