TypeError: res.json n'est pas une fonction
Je suis en train d'envoyer deux json, mais Il ne fonctionne pas. Il imprime TypeError: res.json is not a function
mais je ne comprends pas pourquoi Cela arrive. Est-il des idées? Merci!!!!!
app.post('/danger', function response(req, res) {
let placeId = req.body.data;
let option = {
uri: 'https://maps.googleapis.com/maps/api/directions/json?',
qs: {
origin:`place_id:${placeId[0]}`, destination: `place_id:${placeId[1]}`,
language: 'en', mode: 'walking', alternatives: true, key: APIKey
}
};
rp(option)
.then(function(res) {
let dangerRate = dangerTest(JSON.parse(res), riskGrid);
res.json({ data: [res, dangerRate]});
})
.catch(function(err) {
console.error("Failed to get JSON from Google API", err);
})
});
- Pourquoi cette question?
Vous devez vous connecter pour publier un commentaire.
Parce que vous êtes d'écraser votre
res
variable dans le.then
de votrerp
fonction:.json
n'est pas une fonction. Sauf si vous utilisez une bibliothèque qui en fait l'un, JavaScript utiliseJSON
(avec deux méthodes.parse()
et.stringify()
dont vous utilisez dans la ligne ci-dessus).Si vous essayez de définir une propriété de l'objet par le nom de
.json
ensuite, il serait:Avec de nouveaux httpClient bibliothèque, vous n'avez pas besoin d'appeler .json() la méthode, il suffit d'utiliser cette carte simple au lieu de la méthode json.