0

我面临的问题是我正在使用 chai-http 测试一个 api,但它在中间件中出现意味着它不调用 next() 函数。不知道如何处理这个,小指南可能对我有很大帮助。这是我的代码,它可以帮助您更好地理解。

中间件

function middleware(req, res, next) => {
  // doing some stuff
  console.log("step 1") // prints
  next()
}

API

router.get('/orders', middleware, (req, res) => {
  // some stuff
 console.log("step 2") // not prints
 res.send(result)
})

测试用例

  let order = new Order(mockOrder);
  order.save((err, order) => {
    chai.request(server)
    .get('/orders')
    .end((err, res) => {
    // some stuff
   })
  })
4

1 回答 1

0

此更新可能对您有用。它来自 github。

另一个重大变化是 chai.request(server) 对象将在第一次请求后自动关闭服务器连接。这意味着如果您有这样的代码:

您需要将其更改为:

const request = chai.request(app).keepOpen()
于 2018-06-21T22:36:15.707 回答