Lesen Sie dies einfach im REST-API-Regelbuch : GET und POST dürfen nicht zum Tunneln anderer Anforderungsmethoden verwendet werden .
Tunneling bezieht sich auf jeden Missbrauch von HTTP, der die Absicht einer Nachricht maskiert oder falsch darstellt und die Transparenz des Protokolls untergräbt. Eine REST-API darf ihr Design nicht beeinträchtigen, indem sie die Anforderungsmethoden von HTTP missbraucht, um Clients mit begrenztem HTTP-Vokabular zu unterstützen . Verwenden Sie die in den Regeln in diesem Abschnitt angegebenen HTTP-Methoden immer ordnungsgemäß. [Highlights von mir]
Aber dann verwenden viele Frameworks Tunneling , um REST-Schnittstellen über HTML-Formulare verfügbar zu machen, da sie <form>
nur über GET
und Bescheid wissen POST
. Mein jüngstes Beispiel ist ein MethodRewriteMiddleware
for flask (vom Autor des Frameworks eingereicht): http://flask.pocoo.org/snippets/38/ .
Gibt es Möglichkeiten, die "Regel" ohne Hacks oder Add-Ons in Web-Frameworks einzuhalten?