Noch ein Tipp falls Du mal vorhast einen Parser zu entwickeln:
Und betrachte den Content-Type als austauschbaren Layer! D.h., daß man am Client die Wahl hat zwischen verschiedenen Enctypes und daß dabei serverseitig nicht eine Zeile Code zu ändern ist.
So sind die Enctypes application/x-www-form-urlencoded
und multipart/form-data
die Klassiker was Kompatibilität betrifft, von der Möglichkeit des FileUplaod einmal abgesehen. Aber diese Beiden sind ja nicht die ganze Welt.
Bspw. beschreibt ein Enctype application/json
allenfalls ein Verfahren zur Serialisierung/Wiederherstellung aber ein Enctype application/soap+json
beschreibt auch die Schlüsselfelder.
Deiner Kreativität sind keine Grenzen gesetzt ;)