J'utilise supertest pour envoyer des paramètres de chaîne de requête get, comment faire?
J'ai essayé
var imsServer = supertest.agent("https://example.com");
imsServer.get("/")
.send({
username: username,
password: password,
client_id: 'Test1',
scope: 'openid,TestID',
response_type: 'token',
redirect_uri: 'https://example.com/test.jsp'
})
.expect(200)
.end(function (err, res) {
// HTTP status should be 200
expect(res.status).to.be.equal(200);
body = res.body;
userId = body.userId;
accessToken = body.access_token;
done();
});
mais cela n'a pas envoyé les paramètres username
, password
, client_id
comme chaîne de requête au point de terminaison. Existe-t-il un moyen d'envoyer des paramètres de chaîne de requête à l'aide de supertest?
Bien que supertest
ne soit pas très bien documenté, vous pouvez jeter un œil à la tests/supertest.js
.
Là, vous avez un suite de tests uniquement pour les chaînes de requête.
Quelque chose comme:
request(app)
.get('/')
.query({ val: 'Test1' })
.expect(200, function(err, res) {
res.text.should.be.equal('Test1');
done();
});
Donc:
.query({
key1: value1,
...
keyN: valueN
})
devrait marcher.