heute hab ich mich mit dem Thema utf-8 in Python beschäftigt.
Ich glaube ich habe soviel gelesen, das ich jetzt den Wald vor lauter Codepagen, encodes und decodes nicht mehr sehe!!!!
Ich habe eigentlich ein recht einfaches Problem:
Ich habe mir einen eigenen HTTPRequestHandler geschrieben, der von BaseHTTPRequestHandler erbt. Dort habe ich dann die Methode do_GET() implementiert:
Code: Alles auswählen
......
elif command == "/getlist":
self.send_response(200)
xml = self.__agent.getOwnMusicList() #XML-String beschaffen
self.send_header('Content-type','text/xml')
self.send_header('Content-Length',len(str(xml))) #Contentlength da HTTP 1.1
self.end_headers() #header abschliessen
self.wfile.write(xml); # xml-String als response senden!
......
Meine Frage ist nun: In welcher Codierung werden die Zeichen nun geschickt? Ich denke doch mal in ASCII. Das will ich jedoch nicht, denn ich möchte utf-8 als Zeichensatzt. Wandle ich jetzt den string in utf-8 um, dann knallts in der socket.py weil dort in einer Methode str(data) aufgerufen wird. data ist jetzt aber utf-8!!! Bum...
Ich glaub ich sehe nix mehr, kann mir jemand weiterhelfen? Wäre echt net
Viele Grüße,
Stefan