I assumed that any data being sent to my parameter strings would be utf-8, since that is what my whole site uses throughout. Lo-and-behold I was wrong.
For this example has the character ä
in utf-8 in the document (from the query string) but proceeds to send a B\xe4ule
(which is either ISO-8859-1 or windows 1252) when you click submit. It also fires off a ajax request which also fails from trying to decode the non-utf8 character.
An in django, my request.POST is really screwed up :
>>> print request.POST
<QueryDict: {u'alias': [u'eu.wowarmory.com/character-sheet.xml?r=Der Rat von Dalaran&cn=B\ufffde']}>
How can I just make all these headaches go away and work in utf8?