首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用chai-http Node Js Express处理中间件

使用chai-http Node Js Express处理中间件
EN

Stack Overflow用户
提问于 2018-06-21 06:33:10
回答 1查看 323关注 0票数 0

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

中间件

代码语言:javascript
复制
function middleware(req, res, next) => {
  // doing some stuff
  console.log("step 1") // prints
  next()
}

API

代码语言:javascript
复制
router.get('/orders', middleware, (req, res) => {
  // some stuff
 console.log("step 2") // not prints
 res.send(result)
})

测试用例

代码语言:javascript
复制
  let order = new Order(mockOrder);
  order.save((err, order) => {
    chai.request(server)
    .get('/orders')
    .end((err, res) => {
    // some stuff
   })
  })
EN

回答 1

Stack Overflow用户

发布于 2018-06-21 22:36:15

此更新可能对来自github的you.It有用。

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

您需要将其更改为:

代码语言:javascript
复制
const request = chai.request(app).keepOpen()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50961827

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档