
HTML page content type has charset=iso-8859-1 but document.characterSet is 'UTF-8'
Hi,
I'm a web developer and I have an issue document.characterSet property from DOM API has an incorrect value on a non UTF-8 page
Firefox version: 95.0.2
1. HTML page is returned with following content-type content-type: text/html; charset=iso-8859-1
2. JavaScript code in the page reads document.characterSet property
Expected characterSet value is "ISO-8859-1"
Actual characterSet value is "UTF-8"
Thanks and regards,
All Replies (3)
What encoding does the server send ?
If the server sends encoding "UTF-8" then that prevails and Firefox ignores a possible specification in the actual file for security reasons.
I observed this behavior while working on a customer incident. The server responds with a content-type header which is "text/html; charset=iso-8859-1"
I tried to reproduce on a sample but in my test, I get the expected "window-1252".
However, if the response body contains an UTF-8 BOM, content-type header is ignored and document characterSet is "UTF-8"
Here is a small sample https://glitch.com/edit/#!/document-charset
Is this the intended behavior?
This question has been locked because the original author has deleted their account. While you can no longer post new replies, the existing content remains available for reference.