使用nock运行模拟请求时如何忽略标头?

时间:2018-06-06 22:57:36

标签: node.js nock

我需要使用nock模块来模拟请求,该模块由添加额外标头(x-md5-checksum)的模块发出。由于这些标题,请求不匹配。

如何强制nock忽略此标头并仍然匹配请求?

感谢。

1 个答案:

答案 0 :(得分:2)

根据docs,如果未指定reqHeaders,则会跳过它们。

  

如果没有为mocking指定请求头,那么Nock会   自动跳过请求标题的匹配

如果您要验证其他标头,并且x-md5-checksum存在,但您不知道它的价值,则可以使用functionregex来验证任何标头值,或只是有效的md5

nock('http://www.example-com', {
   reqHeaders: {
     'x-md5-checksum': /[a-fA-F0-9]{32}/
     // or
     'x-md5-checksum': value => true // I don't care about the value
   }
})
// or use .matchHeader
.matchHeader('x-md5-checksum', value => true)
.get('/')
.reply(200)