Die aktuelle Swagger-Spezifikation behauptet, dass Swagger verwendet wird, um RESTful APIs zu beschreiben und zu dokumentieren. Ich denke, dies eher nicht der Fall ist, ich denke, Swagger für einfach beschreiben eine HTTP API für ein paar Gründe nützlich ist:Ermöglicht Swagger 2.0 unreines REST-API-Design?
- Die Swagger spec hat Elemente wie
Path
undDefinition
aber sie bilden nicht eindeutig auf die REST data elements wie Ressourcen-, Repräsentations- und Medientypen. Ich denke, um eine REST-API effektiv zu beschreiben, sollten Sie die expliziten REST-Datenelemente im Kontext Ihrer API definieren. - Hyperlinks sind keine erstklassigen Objekte in der Swagger-Spezifikation und daher können Hyperlinks und ihr kritisches beschreibendes Attribut, die Link-Beziehung, leicht weggelassen werden. Tatsächlich werden Hyperlinks überhaupt nicht erwähnt.
- HTTP Pfade sind an der Front-und-Zentrum, das eine klare Verletzung eines Punktes Fieldings hat in seinem bekannten blog post zu sein scheint:
A REST API festen Ressourcennamen oder Hierarchien definieren darf nicht (eine offensichtliche Verbindung von Client und Server)
Im Grunde denke ich, APIs, um die Swagger 2.0-Spezifikation führt Sie definiert unter Verwendung eines API zu entwerfen, die nicht durch HATEOAS gezwungen wird, die REST verletzen würde.
Ist das korrekt oder fehle ich etwas?
Warum gibt es so viele Stimmen für diese Frage? Es ist eine gültige und gut präsentierte Frage. Wenn Sie abstimmen, geben Sie einen Grund an. – Jason
@Jason Ja, diese Frage ist eine gut gestellte, wichtige Frage, aber es ist keine Programmierfrage. Programmers SE behauptet, es sei "eine Frage-Antwort-Site für professionelle Programmierer, die an konzeptionellen Fragen zur Softwareentwicklung interessiert sind." Das klingt für mich viel besser für diese Art von Frage. – Tommy
siehe http://meta.stackoverflow.com/questions/254570/choosing-between-stack-overflow-and-programmers-stack-exchange – Tommy