Webservice REST - Disponibilizar Recursos

Java

Engenharia de Software

Modelagem

22/08/2016

Olá Pessoal!

Eu gostaria de saber se há alguma \"filosofia\" em webservices REST que determina qual é a granularidade da informação que devemos expor sobre um recurso. Para deixar mais claro, segue abaixo um exemplo.

Suponha que eu tenha os objetos Carro e Modelo, onde um carro tem um modelo. Ao implementar um GET \"/rest/carro/3\" eu tenho pelo menos duas possibilidades:

1 - Retornar os campos simples do objeto Carro e apenas o ID do modelo (ou link rest do objeto Modelo associado);
2 - Retornar o objeto Carro completo incluindo o objeto Modelo que está dentro dele;

Na primeira opção eu teria o problema de ter que fazer duas requisições ao servidor para ter o objeto completo, já na segunda opção eu poderia ter o problema de carregar informação de uma vez em excesso. Naturalmente coloquei um exemplo simples demais, mas em casos complexos vários objetos podem estar aninhados e contendo diversas listas, etc.

Enfim, alguém saberia apontar alguma direção sobre como tratam isso em seus projetos? Há algum direcionamento sobre esse tipo de questão?
Tiago Silva

Tiago Silva

Curtidas 0
POSTAR