Sven Rautenberg: http.setRequestHeader

Beitrag lesen

Moin!

XMLHttpRequest verwendet immer und ausschließlich UTF-8. Das kann nicht umgestellt werden auf etwas passenderes, du mußt damit serverseitig passend umgehen.

Muss man Eingaben über ein Formular selber erst in UTF-8 umwandeln, oder macht das der Browser für den XMLHttpRequest schon von alleine?

Angenommen, das Dokument wäre noch in iso-8859-1 codiert, will aber AJAX verwenden, geht das? Wo muss man da umcodieren? Request? Response?

Alle Zeichen, die sich innerhalb des Browsers befinden, sind Unicode-Zeichen (deren Codierungsform für den Anwender irrelevant sind, weil das Browserinterna ist). Der Browser wandelt basierend auf der Codierungsdeklaration die hereinkommende HTML-Seite passend um.

Javascript arbeitet auch komplett unicode-basierend, alle Strings dort sind Unicode. Das gilt logischerweise auch für die value-Eigenschaft von Formularfeldern. Es sind daher keine Maßnahmen notwendig, um aus der internen Stringdarstellung UTF-8 zu machen, das regelt XMLHttpRequest von allein.

- Sven Rautenberg

--
"Love your nation - respect the others."