NodeJs Axios 响应错误编码

2023-11-26

我正在尝试使用 Axios 调用 REST 调用并得到奇怪的响应。

try {
  
   const response = await axios.get("https://api.predic8.de/shop/products/");
   console.log(response.data);
}
catch (error) {
    console.log(`[Error] -> ${JSON.stringify(error.response.data)}`)
}

其结果如下:

▼♥��M �0 5�Z�z�wg�4׎�W�����Yjxtʸ��:�Ǐ►_�☺}Y��/�R2~♠$���Ú�V�8\�]!�)☺*����H��>�§��Aj"↕��a0 ݚ��$�颲Y3%je3@=�0��@§lb:�|�} .☺8�K&�_ƫp�j�(o-�К♦

我需要做什么才能获取 json 对象?

我尝试添加带有编码和内容类型的标头标头,但没有成功。


在 v1.2.1 中修正了这个错误。

你需要添加Accept-Encoding with application/json在 axios.get 标头中。

它的默认值是gzip在V1.2.0中 axios 在 v1.2.1 中修复了这个缺陷

v 1.2.0 中的演示代码

const axios = require('axios')

const getProducts = async () => {
    try {
        const resp = await axios.get(
            'https://api.predic8.de/shop/products/',
            {
                headers: {
                    'Accept-Encoding': 'application/json',
                }
            }
        );
        console.log(JSON.stringify(resp.data, null, 4));
    } catch (err) {
        // Handle Error Here
        console.error(err);
    }
};

getProducts();

OR 在 v1.2.1 中修复

const axios = require('axios')

const getProducts = async () => {
    try {
        const resp = await axios.get(
            'https://api.predic8.de/shop/products/'
        );
        console.log(JSON.stringify(resp.data, null, 4));
    } catch (err) {
        // Handle Error Here
        console.error(err);
    }
};

getProducts();

Result

$ node product.js
{
    "meta": {
        "count": 32,
        "limit": 10,
        "page": 1,
        "next_url": "/shop/products/?page=2&limit=10"
    },
    "products": [
        {
            "name": "Bananas",
            "product_url": "/shop/products/3"
        },
        {
            "name": "Oranges",
            "product_url": "/shop/products/10"
        },
        {
            "name": "Pineapples",
            "product_url": "/shop/products/33"
        },
        {
            "name": "Dried Pineapples",
            "product_url": "/shop/products/42"
        },
        {
            "name": "Cranberries",
            "product_url": "/shop/products/57"
        },
        {
            "name": "Mango fresh",
            "product_url": "/shop/products/62"
        },
        {
            "name": "Raspberries",
            "product_url": "/shop/products/90"
        },
        {
            "name": "Cherries",
            "product_url": "/shop/products/7"
        },
        {
            "name": "Apple",
            "product_url": "/shop/products/18"
        },
        {
            "name": "Green Grapes",
            "product_url": "/shop/products/11"
        }
    ]
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NodeJs Axios 响应错误编码 的相关文章

随机推荐

  • C 中的反转位模式

    我正在将数字转换为二进制并且必须使用putchar输出每个数字 问题是我得到的顺序是相反的 在做我自己的事情之前 有没有办法反转数字位模式 由于 int n 具有特定的位模式 我如何反转该位模式 有很多方法可以做到这一点 有些方法非常快 我
  • 尽快清除透明的 BufferedImage

    我有一个使用以下代码创建的透明 BufferedImage 我认为与它的创建方式无关 GraphicsEnvironment ge GraphicsEnvironment getLocalGraphicsEnvironment Graphi
  • 如何使用 ES6 语法将 Firebase Firestore 导入到 create-react-app 项目中

    我在让 Firebase Firestore 使用基本的 create react app 样板时遇到问题 有人有工作样本吗 The 开始使用doc仅解释了如何设置它require语句 而我想使用 ES6 导入 const firebase
  • ASP.NET MVC 数据注释日期时间默认值

    In my 视图模型我有以下属性 Required DataType DataType Date ErrorMessage Please enter a valid date in the format dd mm yyyy Display
  • sql server 2012 Express不理解俄语字母

    我有正在处理俄语文本的数据库 但是当我运行查询时它会向我显示这一点 数据库将由俄罗斯人使用 它必须正确显示俄语文本 有什么想法如何修复它吗 将来它将位于俄罗斯并与俄语版本的 SQL Server 一起使用 但现在我正在开发英语版本的 SQL
  • 如何将切片作为可变参数输入传递?

    我有一个函数func more t 我想知道是否可以使用切片来填充参数列表 我正在尝试解决以下程序 基本上是模仿一个普通的 shell 它以字符串的形式接收命令 Command函数需要一个参数 列表 我不知道如何将字符串转换为这样的列表 i
  • mysql存储函数参数

    我刚刚开始创建存储函数 这是我第一次 所以我遇到了一些问题 目前我使用调用该函数SELECT test 测试现在是函数名称 我想向函数发送一个数字 用户名 ID 并返回用户名 我通过使用这个工作SELECT test 1 1是表中用户的ID
  • java后台任务

    我想知道哪种方法是在 java 中实现某种后台任务的最有效方法 我猜那将是某种非阻塞线程 更准确地说 我有一些 java 代码 然后在某个时候我需要执行一个长时间运行的操作 我想做的是在后台执行该操作 以便程序的其余部分可以继续执行 当该任
  • 我可以创建没有对角线的底部边框吗? [复制]

    这个问题在这里已经有答案了 我想创建一个具有不同颜色的盒子 左 右和顶部颜色为红色 底部颜色为灰色 但我想要盒子的平坦底部边框 HTML div class ts div CSS ts height 100px width 100px bo
  • UIView-Encapsulated-Layout-Height 和容器视图

    I have UIViewController 1 具有scroll view 里面这个scrollview有container view固定到top bottom leading trailing 没有固定高度 Container vie
  • + 运算符的性能是否低于 StringBuffer.append()

    在我的团队中 我们通常像这样进行字符串连接 var url some dynamically generated URL var sb new StringBuffer sb append a href click here a 显然以下内
  • 在 VS 2008 嵌套母版页中包含对 JavaScript 的相对引用的首选方法

    我们的基本母版页具有如下内容 javascript actions js gt gt javascript jquery jquery 1 2 6 min js gt gt
  • Python list.clear() 时间和空间复杂度?

    我正在写一篇关于 Python 的博客文章list clear 方法 我还想提一下底层算法的时间和空间复杂度 我预计时间复杂度是O N 迭代元素并释放内存 但是 我发现了一个article其中提到它实际上是一个O 1 手术 然后 我在CPy
  • Apache POI,同时使用 XSSF 和 HSSF

    我对 Apache POI 项目有疑问 我使用失败XSSF and HSSF in the 同一个 Java 类 我应该下载哪个 jar 或应该将哪个工件添加到 Maven 中 我想同时处理两者xls and xlsx文件同时 当我收到ex
  • PHP 输出到文件以供下载,无需在服务器上创建文件

    我想将数据输出到文件供用户下载 而无需在服务器上实际创建文件 文件的数据只是一个数组 我将其转换为 CSV 格式以供用户下载 这是我的代码 fh fopen file csv w fputcsv fh arr arr is my array
  • 使用 SO_REUSEADDR - 先前打开的套接字会发生什么?

    在unix网络编程中 我总是在服务器使用的套接字上设置SO REUSEADDR选项来侦听连接 这基本上是说可以在机器上的同一端口上打开另一个套接字 当从崩溃中恢复并且套接字未正确关闭时 这非常有用 应用程序可以重新启动 它只会在同一端口上打
  • 使用条件语句更改数据点的颜色

    我有一个数据集 我用它来制作散点图 我想根据 x 值为三个不同区域内的数据点分配三种不同的颜色 x 值 具有 x 值的数据点 3 1549 我想显示为黑色 x 值 gt 1549 的数据点我想显示为紫色 这是我的散点图代码并完成前两个参数
  • ASP.NET:访问 global.asax 中的会话变量

    我有一个 ASP NET 应用程序 在 Global asax 应用程序错误事件中 我调用一个方法来跟踪 记录错误 我想在这里使用会话变量内容 我使用了下面的代码 void Application Error object sender E
  • Linux 脚本 - 日期操作

    我将设置一个日期变量 例如 08 JUN 2011 我想根据该日期进行一些计算 即 1 必须获取给定日期所在月份的第一天 2 给定日期所在月份的上一个日期 3 给定日期月份的最后一天 我所知道的是使用当前系统日期和时间进行操作 但不知道如何
  • NodeJs Axios 响应错误编码

    我正在尝试使用 Axios 调用 REST 调用并得到奇怪的响应 try const response await axios get https api predic8 de shop products console log respo