Poster une demande via Chai
Je suis en train de faire une demande à mon node JS serveur qui accepte post/put /call. Les paramètres, je suis en train d'envoyer des post appel à l'aide de chai n'est pas visible sur le serveur (req.corps.myparam).
J'ai essayé avec ci-dessous requête post, mais a fini avec a pas des résultats:-
var host = "http://localhost:3000";
var path = "/myPath";
chai.request(host).post(path).field('myparam' , 'test').end(function(error, response, body) {
et
chai.request(host).post(path).send({'myparam' : 'test'}).end(function(error, response, body) {
Node JS code est donné ci-dessous:-
app.put ('/mypath', function(req, res){ //Handling post request to create league
createDoc (req, res);
})
app.post ('/mypath', function(req, res){ //Handling post request to create league
createDoc (req, res);
})
var createDoc = function (req, res) {
var myparam = req.body.myparam; //league id to create new league
if (!myparam) {
res.status(400).json({error : 'myparam is missing'});
return;
}
};
Code ci-dessus va à myparam est manquant.
S'il vous plaît laissez-moi savoir quelle est la meilleure façon de faire de même.
Merci à l'Avance.
source d'informationauteur SCJP1.6 PWR
Vous devez vous connecter pour publier un commentaire.
La façon dont vous avez écrit, je suppose que vous avez utilisé chai-http paquet. Le .champ() fonction ne fonctionne pas dans chai-http. Un autre utilisateur l'a fait remarquer ici et a ouvert un problème sur github.
Ici est de savoir comment vous auriez pu écrire:
Voici le code complet que avec succès passe les paramètres pour le serveur:
test.js
server.js
J'ai trouvé deux façons de résoudre le problème avec vide
req.body
.body
comme une forme de donnéesbody
commeapplication/json
Dans les deux cas, j'utilise
.send({foo: 'bar'})
et pas.field('foo' , 'bar')
.La question n'a apparemment rien à voir avec
chai-http
. Il estsuperagent
'question. Etchai-http
est à l'aide desuperagent
sous le capot.superagent
tente de jouer à l'Apprentissage de la Machine et de faire des suppositions pour nous. Voici ce que leurs docs dire:chai-http
plus grand défaut est qu'ils n'ont pas de document plugin correctement. Vous avez à chercher des réponses sur Internet et pas surchai-http
GitHub page où il doit être.