Ich stand heute vor dem eher unbedeutenden Problem, dass Prototype-JS (aktuell Version 1.6.0) bei einer Serverantwort nur dann JSON selbständig interpretiert, wenn entweder im Header “X-JSON” oder als Content-Type “application/json” geliefert wird. Weder das Eine noch das Andere wären aus technischer Sicht problematisch gewesen umzusetzen, jedoch wollte ich einen Content-Type “text/x-json” senden, da dieses nach Ratschlag der RFC-1521 in diesem Fall passender wäre, da es sich bei JSON um ein menschenlesbares Textformat handelt – “application” hingegen sollte nur für Binärinformationen verwendet werden. Es sei nur nebenbei erwähnt, dass die genannte RFC aus dem Jahr 1993 stammt, als an JSON noch nicht zu denken war und somit nur eine Richtlinie darstellt.
Die entscheidende Stelle in Prototype war auch recht schnell gefunden. Es handelt sich dabei um die Klasse Ajax.Response und die Methode _getResponseJSON(), worin der Content-Type geprüft wird. Die Frage war nur: Wie passe ich die Abfrage an, ohne den Originalcode von PrototypeJS zu ändern und gleichzeitig zu gewährleisten, dass alle von Prototype durchgeführten Ajax-Requests trotzdem die erweiterte Überprüfung auf Content-Type “text/x-json” verwenden? Read the rest of this entry »
Share this Post[?]
