Gibt es einen Unterschied zwischen dem Abrufen von QUERY_STRING-Argumenten über req.query[myParam]
und req.params.myParam
? Wenn ja, wann soll ich welche verwenden?
node.js
query-string
Pavindu
quelle
quelle
req.param
ist jetzt veraltet. Knoten schlägt vor, mitreq.query
oderreq.params
Angesichts dieser Route
und diese URL gegeben
http://www.google.com/hi/there?qs1=you&qs2=tube
Du wirst haben:
req. Abfrage
req. params
Express req.params >>
quelle
/
Angenommen, Sie haben Ihren Routennamen folgendermaßen definiert:
was wird werden:
Hier, wenn Sie drucken möchten : request.params
so
also request.params ist eine Objekteigenschaften auf die benannte Route enthält
und request.query stammt aus Abfrageparametern in der URL, z.
request.query
so
quelle
Sie sollten jetzt mit der Punktnotation auf die Abfrage zugreifen können.
Wenn Sie darauf zugreifen möchten, sagen Sie, dass Sie eine GET- Anfrage unter erhalten
/checkEmail?type=email&utm_source=xxxx&email=xxxxx&utm_campaign=XX
und die verwendete Abfrage abrufen möchten .Parameter werden für den selbst definierten Parameter zum Empfangen von Anforderungen verwendet, wie z. B. (Beispiel):
quelle
Ich möchte einen wichtigen Hinweis dazu erwähnen
req.query
, da ich derzeit an Paginierungsfunktionen arbeite, die auf basierenreq.query
und ich habe ein interessantes Beispiel, das ich Ihnen demonstrieren kann ...Beispiel:
Sie werden ein
+
Schild vorreq.query.pageSize
und bemerkenreq.query.currentPage
Warum? Wenn Sie
+
in diesem Fall löschen , wird ein Fehler angezeigt, und dieser Fehler wird ausgelöst, da ein ungültiger Typ verwendet wird (mit der Fehlermeldung muss das Feld 'limit' numerisch sein).Wichtig : Wenn Sie etwas aus diesen Abfrageparametern extrahieren, handelt es sich standardmäßig immer um eine Zeichenfolge , da die URL kommt und als Text behandelt wird.
Wenn wir mit Zahlen arbeiten und Abfrageanweisungen von Text in Zahlen konvertieren müssen, können wir einfach ein Pluszeichen vor der Anweisung einfügen.
quelle