Diferentes padrões e tecnologias podem ser usados para representar e transformar dados de temperatura. Considere a seguinte codificação: GET /convert?celsius=25 HTTP/1.1 Host: example.com O código acima representa qual padrão?
- A)XML
XML e um formato de marcacao para representar dados, mas a linha dada mostra uma requisicao HTTP, nao um documento XML.
- B)XSLT
XSLT serve para transformar documentos XML, e nao para descrever uma chamada HTTP como a do enunciado.
- C)UDDI
UDDI e um padrao de catalogo e descoberta de servicos web, nao o estilo de comunicacao mostrado na requisicao.
- D)REST
REST e o padrao correto, pois a requisicao usa HTTP com verbo GET, recurso na URL e parametro de consulta.
- E)JSON
JSON e um formato de serializacao de dados, mas o exemplo traz uma requisicao HTTP, nao um objeto JSON.
Gabarito: D
A expressão mostrada tem a cara de uma requisicao HTTP: metodo GET, caminho da rota /convert, parametro na query string (celsius=25) e versao HTTP/1.1 com Host. Isso e tipico de comunicacao entre cliente e servidor na Web, especialmente em APIs que seguem o estilo REST. Em REST, voce usa recursos acessados por URLs e opera sobre eles com verbos HTTP como GET, POST, PUT e DELETE. Aqui, o cliente esta pedindo uma conversao passando um parametro pela URL, o que combina com a ideia de recurso + operacao via HTTP. Nao ha estrutura de documento como em XML ou JSON, nem transformacao de linguagem como em XSLT, nem registro de servicos como em UDDI. Ou seja, nao estamos diante de formato de dados, mas de um padrao de arquitetura para web services. Por isso, o gabarito e REST. Em provas, a pista costuma estar justamente no jeito de escrever a requisicao: verbo HTTP, URL e parametros na query. Se aparece essa combinacao, pense primeiro em REST antes de sair caçando formatos de dados.