req.query
et req.param
dans ExpressSupposons qu'un client envoie une paire = Android (clé, valeur) paire dans la requête ... laquelle utiliser?
[EDIT]
Supposons que Android envoie une demande POST -> - L'intention est d'envoyer la clé, valeur) au client et le serveur doit exécuter une requête de base de données basée sur la valeur dans le serveur et retourne la réponse JSON
Regardez :: cette question pour le programme référencé: : programme Simple Express permettant d’interroger un résultat
req.query
retournera un objet JS après l'analyse de la chaîne de requête.
/user? name = tom & age = 55 - req.query
donnerait {name:"tom", age: "55"}
req.params
retournera les paramètres dans la route correspondante. Si votre route est /user /: id et que vous faites une demande à /user/5 - req.params
donnerait {id: "5"}
req.param
est une fonction qui arrache les paramètres de la requête. Tout cela peut être trouvé ici .
[~ # ~] met à jour [~ # ~]
Si le verbe est un POST
et que vous utilisez bodyParser
, vous devriez pouvoir obtenir le corps du formulaire dans votre fonction avec req.body
. Ce sera la version JS analysée de la forme POST
ed.
Je suggère d'utiliser la suite
req.param('<param_name>')
req.param ("") fonctionne comme suit
La recherche est effectuée dans l'ordre suivant:
req.params
req.body
req.query
L'accès direct à req.body, req.params et req.query doit être privilégié pour plus de clarté - à moins que vous n'acceptiez vraiment les entrées de chaque objet.
req.query
Est la chaîne de requête envoyée au serveur, par exemple /page?
test = 1, req.param
Correspond aux paramètres transmis au gestionnaire.
app.get('/user/:id', handler);
, aller à /user/blah
, req.param.id
renverrait blah
;
Paramètres de passage
GET request to "/cars/honda"
retourne une liste de modèles de voitures Honda
Requête de passage
GET request to "/car/honda?color=blue"
renvoie une liste des modèles de voiture Honda, filtrés, de sorte que seuls les modèles avec une couleur de stock bleue sont retournés.
Cela n'a aucun sens d'ajouter ces filtres dans les paramètres d'URL (/ car/honda/couleur/bleu) car, selon REST, cela voudrait dire que nous souhaitons obtenir un tas d'informations sur la couleur "bleu". Comme nous souhaitons réellement une liste filtrée de modèles Honda, nous utilisons des chaînes de requête pour filtrer les résultats renvoyés.
Notez que les chaînes de requête ne sont en réalité que des paires {clé: valeur} dans un format légèrement différent:? Key1 = valeur1 & clé2 = valeur2 & clé3 = valeur3.