In meiner RESTful API erweitern alle Ressourcen die Spring ResourceSupport Basis, um Hassoas Principals von Entwurf zu gewährleisten. Zum Beispiel:Swagger und RESTful Spring hateoas Ressourcen
public class PoolResource extends ResourceSupport {
private String name;
...
}
Ich verwende auch Swagger, und ich frage mich: ist es möglich, den Prahlerei-ui irgendwie zu konfigurieren, um die Eigenschaften zu ignorieren von ResourceSupport kommen?
(Swagger-ui bietet einen schönen und einfachen Frontend des API. Als einer der großen Vorteile von Swagger mit der API für die mit der API zu verstehen und zu spielen, um, einfach, die sind nicht einmal mit der REST-API vertraut ... solange die "links" und "rels" ins Bild kommen.)
Wenn Sie keine Hypermedia möchten, warum verwenden Sie Spring HATEOAS überhaupt? Wenn du Hypermedia willst, warum benutzt du Swagger (was Hypermedia aktiv unterminiert)? –
Ich möchte Hypermedia. Nachdem ich RESTful Principals studiert hatte, verstand ich die Vorteile von Hypermedia, also wollte ich wirklich eine [level 3] API (level 3) (http://martinfowler.com/articles/richardsonMaturityModel.html) entwerfen. Das ist der Grund warum Spring HATEOAS verwendet wird. Aber die meisten Benutzer der API sind immer noch nicht bekannt Hypermedia und verstehen nicht, warum es überhaupt gut ist. Für sie bietet Swagger eine sehr gute Sicht auf die gesamte API. Es ist sehr gut, es jedem zu präsentieren und leicht zu verstehen, sogar von meiner Oma zu einem leitenden Entwickler. Was meinst du Swagger "untertreibt Hypermedia"? – istibekesi
Die meisten Antworten schlagen mir vor, nicht Swagger zu verwenden, [Herrlichkeit von REST] (http://martinfowler.com/articles/richardsonMaturityModel.html) wird die meisten meiner Fragen lösen. Okay, stellen wir uns vor, ich schmeiße mich weg. Das führt mich zu Fragen wie diesem: - Ich habe Ressource 'Pool'. Was ist, wenn ich ein neu installiertes System ohne eine vorhandene Poolinstanz habe, sodass ich keinen Pool abrufen kann? Wie erstellt man einen Pool (POST)? Wie sieht der Pool aus? - Was ist mit optionalen Feldern? Validierungen? Erforderlich ... usw.? - Was ist mit "Offline" -Dokumentation? – istibekesi