Ich verwende Spring und Java und implementieren REST-basierte Dienste. Ich habe eine Gruppe von Entwicklern, die auch für Mobilgeräte, iPad und das Web entwickeln. Stellen Sie sich vor, ich habe eine Bohne
Code: Select all
Class User{
private String Name;
private Integer id;
private String photoURL;
private ArrayList ProjectName;
private ArrayList TechnologyList;
private ArrayList InterestList;
//Getters and setters
}
Während die Webentwickler die gesamten Felder benötigen und mobile Entwickler nur zwei Felder davon benötigen, erfordert das iPad etwas zwischen Mobilgerät und Web.
Da ich Jackson als Parser verwende, gibt es eine Möglichkeit, bei der Anfrage an den Controller anzugeben, welche Daten ich benötige, und die anderen zu vermeiden. Stellen Sie sich zum Beispiel vor, ich mache eine GET-Anfrage wie
Code: Select all
GET>http://somedomain.com/users?filter=name,id,photoUrl
Was mir eine JSON-Struktur zurückgibt, etwa wie
Code: Select all
{
"name":"My Name",
"id":32434,
"photoUrl":"/sss/photo.jpg"
}
Wenn jemand nach weiteren Feldern fragt, können diese ebenfalls gefiltert werden. Bitte
teilen Sie mir mit, wie dies bewerkstelligt werden kann, damit meine API generisch und für alle nutzbar bleibt.