Há uma diferença entre obter QUERY_STRING argumentos por meio de req.query[myParam]
e req.params.myParam
? Em caso afirmativo, quando devo usar qual?
node.js
query-string
Pavindu
fonte
fonte
req.param
agora está obsoleto. Node sugere o uso dereq.query
oureq.params
Dada esta rota
e dado este URL
http://www.google.com/hi/there?qs1=you&qs2=tube
Voce terá:
req. inquerir
req. params
Expresso req.params >>
fonte
/
Suponha que você tenha definido o nome do seu trajeto assim:
que se tornará:
Aqui, se você imprimir: request.params
tão
portanto, request.params é um objeto que contém propriedades para a rota nomeada
e request.query vem de parâmetros de consulta no URL, por exemplo:
request.query
tão
fonte
Você deve conseguir acessar a consulta usando a notação de ponto agora.
Se deseja acessar, diga que está recebendo uma solicitação GET em
/checkEmail?type=email&utm_source=xxxx&email=xxxxx&utm_campaign=XX
e deseja buscar a consulta usada.Os parâmetros são usados para o parâmetro autodefinido para receber solicitação, algo como (exemplo):
fonte
Quero mencionar uma observação importante a respeito
req.query
, porque atualmente estou trabalhando na funcionalidade de paginação baseada emreq.query
e tenho um exemplo interessante para demonstrar a vocês ...Exemplo:
Você notará um
+
sinal na frente dereq.query.pageSize
ereq.query.currentPage
Por quê? Se você deletar
+
neste caso, obterá um erro, e esse erro será gerado porque usaremos um tipo inválido (com a mensagem de erro o campo 'limite' deve ser numérico).Importante : Por padrão, se você extrair algo desses parâmetros de consulta, sempre será uma string , pois vem da URL e é tratada como um texto.
Se precisarmos trabalhar com números e converter instruções de consulta de texto em número, podemos simplesmente adicionar um sinal de mais na frente da instrução.
fonte