账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    通过node 做请求 返回的是乱码 全乱的那种 求教各路大佬
    31
    0

    有用nodejs 的 request 发送请求 请求的地址为 http://www.dpfile.com/combos/... 但是返回的代码就是全乱的
    就是这个样子 u001f�bu0000u0000u0000u0000u0000u0000u0003Ľ{_u001bG�.�?�u0002z|�u0004�u0000;�N$�L�8��7�u001d{�̼u0002�i�Zu0017#$"tu0003u0001泿ϳ֪�Vu000b;���;s1��תu_�u001aëY���g���j<Y�~������e��}�X�C;9n=ku001d'i�j2u001d��l��u0017�u0017�Ͼ�r��᳧O��u000e����u0018u000e?�";~�u001f��ٳ~�y�<t�g��+ͮn/���]�[ּ�fu001b����͚�bu��%|L:x���f����־l�u0017��~��u0007�O�E!�u001c��u0016߼A/

    关于request请求头是 这样的

       var options = {
                        url: url,
                        headers: {
                            'User-Agent': 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.29 Safari/525.13',
                            'accept-encoding': 'gzip'
                        }
                    };
                    request(options, function (error, res, body) {
                         //   console.log(body);
                          //  var test = body.toString('utf-8');
                          //  console.log(JSON.parse(body));
                            var maxAge;
                            
                            
                            求助各路大佬帮忙 谢谢
    1
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 11 元积分
        全部回答
    • 0
    • 萌主殿下 普通会员 1楼

      这个问题可能是由于多种原因引起的,以下是一些可能的原因和解决方法:

      1. 使用的字符集:如果你使用的是Node.js的内置fs模块来读取或写入文件,那么你可能需要设置fs.readFile()fs.writeFile()的编码参数。例如,如果你的文件使用的是UTF-8编码,你可以这样做:

      javascript fs.readFile('path/to/file', 'utf-8', function(err, data) { if (err) throw err; // 处理数据 });

      1. 模块路径:如果你使用的是npm或yarn来管理你的依赖,那么你的代码可能需要使用特定的模块路径。例如,如果你在你的代码中使用了axios库来发送HTTP请求,那么你可能需要设置你的模块路径。你可以这样做:

      javascript const axios = require('axios'); const url = 'https://api.example.com/data'; axios.get(url) .then(response => { // 处理响应 }) .catch(error => { // 处理错误 });

      1. 使用的HTTP库:如果你使用的是Node.js的内置http库来发送HTTP请求,那么你可能需要设置http.get()的请求头。例如,如果你的请求头使用了Accept字段来指定请求的内容类型,那么你可能需要设置这个字段。你可以这样做:

      javascript const http = require('http'); const url = 'https://api.example.com/data'; http.get(url, { accept: '*/*', headers: { 'Accept': 'application/json' } }) .then(response => { // 处理响应 }) .catch(error => { // 处理错误 });

      1. 数据源编码:如果你的数据源使用的是Unicode字符集,那么你的请求可能无法正确地解析。你可以尝试将数据源的编码转换为你的本地编码,然后再发送请求。例如:

      javascript const data = '这是Unicode字符,需要转换为你的编码才能正确解析'; const localEncoding = 'utf-8'; const url = 'https://api.example.com/data'; axios.get(url, { encoding: localEncoding, headers: { 'Accept': 'application/json' } }) .then(response => { // 处理响应 }) .catch(error => { // 处理错误 });

      以上是一些可能的原因和解决方法,如果你的代码仍然不能正常工作,可能需要进一步检查你的代码和环境。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部