Considere o código Node.js apresentado a seguir:Considere, a...

Próximas questões
Com base no mesmo assunto
Q892489 Programação

Considere o código Node.js apresentado a seguir:


Imagem associada para resolução da questão


Considere, ainda, que a aplicação foi endereçada com a seguinte url (considere a url correta):


http://example.com:8080/a.b?c=d&e=f&g


O resultado obtido será:

Alternativas

Comentários

Veja os comentários dos nossos alunos

Logo no início do código está pegando a biblioteca http e url e está criando um servidor passando um comportamento para esse servidor. Esta certando o res. como resposta e escrevendo e o resultado é text/html veja abaixo:

res.writeHead(200, {'Content-Type': 'text/html'});

Depois faz um parse da url e depois pegas os query parametes veja abaixo:

var querystring = url.parse(req.url, true).query

Os query parametes são valores que ficam depois da interrogação (?), veja abaixo:

http://example.com:8080/a.b?c=d&e=f&g

Depois intera sobre os query parametes dessa linha res.write("< p>" + i + ": " + querystring[i] + "< /p>"); // Esta linha está escrevendo um parágrafo com cada query paramete. Observe os dois pontos (:) na hora de imprimir os parágrafos e o primeiro valor depois da interrogação (?) que é o c.

1º Parágrafo c: d

2º Parágrafo e: f

3º Parágrafo g:

 

 

Explicação da questão em video começa em 3:36 horas https://www.youtube.com/watch?v=GsXhQr54K8Q

Gabarito: E. Nível altíssimo! A persistência leva ao êxito! Nunca perca a fé!

Letra E

Na URL http://example.com:8080/a.b?c=d&e=f&g, a parte example.com:8080 representa o host e a porta do servidor. Já a parte ?c=d&e=f&g é a query string, que contém os parâmetros de consulta.

Quando você vê o retorno example.com: 8080, isso está mostrando o host e a porta, mas não faz parte dos parâmetros de consulta. Os parâmetros de consulta são apenas c=d, e=f e g (com valor vazio).

Como g não tem um valor associado, ele é considerado um parâmetro vazio. Isso pode ser útil para a lógica da aplicação, que pode verificar a presença de g e agir de acordo.

example.com: 8080 não aparece no retorno da query porque ele não é um parâmetro de consulta, mas sim a identificação do servidor e da porta onde a aplicação está rodando.

Estrutura da URL

Protocolo: http

Host: example.com

Porta: 8080

Caminho: /a.b

Query String: c=d&e=f&g

Query Parameters

c tem o valor d

e tem o valor f

g está presente, mas vazio

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo