可以在supertest测试中删除User-agent标头吗?

时间:2015-05-19 14:43:29

标签: supertest

我正在尝试编写一些Supertest测试用例,其中User-Agent标头与值一起发送,空白或根本不发送。

我知道我可以使用.set来处理为该标题设置值或''为空白,但我不确定如何完全省略User-agent标头。如果我将其从请求中删除,则supertest会发送一个默认值node-superagent / 1.2.0。如果我.set('User-agent',null)它通过网络发送'null'。

似乎没有.remove或.delete。有人有想法吗?

it ('example', function(done){
  agent.post('/abc/a')
  .set('User-agent', 'some agent')
  .send('abc')
  .expect(200)
  .end(function(err, results){})
};

1 个答案:

答案 0 :(得分:4)

该方法称为.unset()。您可以按如下方式使用:

it ('example', function(done){
  agent.post('/abc/a')
  .unset('User-Agent')
  .send('abc')
  .expect(200)
  .end(function(err, results){})
};