我需要拦截supertest
请求以签署我的请求,因为我们的端点都需要签名。
我们遵循与 AWS 类似的 HMAC 签名流程,我可以很好地生成签名。但我认为没有简单的方法来拦截请求以遍历 http 请求标头等......
理想情况下,我认为我可以这样做:
it("return 401 if auth header is signed wrong", function (done) {
api
.post('/v1/users/sessions')
.use(function(request, response){
hmac.signRequest(request, wrongSecret, wrongAccess);
})
.expect(401)
.end(function (err, res) {
if (err) return done(err);
done();
});
在Super-Agent
项目上似乎有.use(fn)
方法。哪个req,res
作为参数传递给回调。
但这似乎不适用于supertest
代理。
我错过了什么还是有另一种简单的方法可以做到这一点?