Ticket #5428 (closed bug: wontfix)
Change in IE's default ajax headers to prevent encoding problems
| Reported by: | victorwss | Owned by: | |
|---|---|---|---|
| Priority: | major | Milestone: | 1.4 |
| Component: | ajax | Version: | 1.3.2 |
| Keywords: | ie content-type | Cc: | |
| Blocking: | Blocked by: |
Description (last modified by dmethvin) (diff)
There are a problem that arise from a difference in the HTTP headers sent to the server.
In firefox, an ajax request generates this header:
content-type: application/x-www-form-urlencoded; charset=UTF-8
In IE we have this:
content-type: application/x-www-form-urlencoded
There are already some reports about encoding problems when using ajax, specially in Internet Explorer. Tickets #3611 (and the duplicates #4315 and #4408) are related to this, however they are about the serialization of the data, not about the headers. Ticket #4855 may be related too, but is a different issue.
So, I think that we should have, at least by default, to add the missing "; charset=UTF-8" in the content-type header of the IE's XMLHttpRequest. This would reduce encoding problems encountered by developers and users giving the possibility of more and better solutions and workarounds for the remanescent ones. This plays better with jQuery compatibility between different browsers too.
Change History
comment:1 Changed 4 years ago by dmethvin
- Keywords ie content-type added
- Component changed from unfilled to ajax
- Description modified (diff)
comment:2 Changed 3 years ago by snover
- Status changed from new to closed
- Resolution set to wontfix
Firefox is the only browser that appends a charset to the header. Your application should assume content without an explicit character set is being transmitted as UTF-8. Alternatively, use the contentType option of the ajax settings object to force the charset yourself.
Please follow the bug reporting guidlines and use jsFiddle when providing test cases and demonstrations instead of pasting the code in the ticket.
