gpt4 book ai didi

node.js - NodeJS中axios和supertest的区别

转载 作者:行者123 更新时间:2023-12-04 01:18:03 24 4
gpt4 key购买 nike

Axios 和 Supertest 都可以向服务器发送 HTTP 请求。但是为什么 Supertest 是用来测试的,而 Axios 是用来练习 API 调用的呢?

最佳答案

使用 Supertest 有两个原因而不是像 Axios(或 Supertest 包装的 Superagent)这样的普通请求库:

  • 它为您管理启动和绑定(bind)应用程序,使其可用于接收请求:

    You may pass an http.Server, or a Function to request() - if theserver is not already listening for connections then it is bound to anephemeral port for you so there is no need to keep track of ports.


    如果没有这个,您必须启动应用程序并自己设置端口。
  • 它添加了 expect方法,它允许您对响应做出许多常见的断言,而无需自己写出来。例如,而不是:
    // manage starting the app somehow...

    axios(whereAppIs + "/endpoint")
    .then((res) => {
    expect(res.statusCode).toBe(200);
    });
    你可以写:
    request(app)
    .get("/endpoint")
    .expect(200);
  • 关于node.js - NodeJS中axios和supertest的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62991474/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com