Como eu poderia fazer um resource para projetos que eu pudesse escolher entre dois GETs, um que retornasse XML e outro JSON?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Como eu poderia fazer um resource para projetos que eu pudesse escolher entre dois GETs, um que retornasse XML e outro JSON?
Olá Bruno tudo bem?
Para isso você pode anotar seu método com:
@Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML})
Dessa forma você pode retornar sua representação em dois formatos (desde que seu servidor saiba transformar o resultado para os formatos acima).
Com isso seu cliente pode utilizar um cabeçalho HTTP para dizer em qual ele espera receber.
O cabeçalho é o Accept com ele o cliente define qual o formato ele deseja receber a representação. por exemplo:
Accept: application/json Accept: application/xmlvocê pode testar isso usando o curl:
curl -H "Accept: application/json" http://localhost:8080/SEU-ENDPOINT
Ou
curl -H "Accept: application/xml" http://localhost:8080/SEU-ENDPOINT
espero ter ajudado e bons estudos.
Muito obrigado mesmo pela aula Fernando... :)
......................