In Google App Engine Dev Server sendet simplejson.dumps Daten, die Header Info enthalten, die True, 0,1 liest

Das Problem war mit Druckaussagen. In app-Maschine vermeiden drucken, verwenden Sie Logger.

Ich habe eine Python-Dikt mit Unicode-Strings. Ich muss das Dict an den Javascript-Code senden, um die Seite zu aktualisieren. Ich mache so etwas.

map=getMap() return Response(simplejson.dumps(map)) 

In der Javascript-Code, wie auch immer ich Antwort,

 True,0,1,2........... {map data}. 

Ich erwarte nur {map data} nicht True,0,1,2... als Präfix. Weißt du, warum das passiert. Es passiert nur, wenn es Unicode-Daten gibt. Bei normalen ascii-Daten ist es nicht passiert.

Das ist mein richtiger Code.

  if data.has_key(requestTypeKey): logging.error(data[requestTypeKey].strip()==birdListKey) if data[requestTypeKey].strip()==birdListKey: logging.error(language+data['countryID']) getter=BirdDataGetter({languageKey:language,countrykey:data[countrykey].strip()}) birdlist=getter.getBirdList() return Response(simplejson.dumps(birdlist)) 

Die Daten sind utf-8 Datei kann folgendes enthalten.

 {'b322': u"R\xfcppell's Warbler"} 

(Kopiert von der eigentlichen Datei, \ xfc ist utf-8 codiert Zeichen ü. Auf der Oberseite meiner Klassendatei habe ich

– codierung: utf-8 –

Header

Ich bekomme folgendes Ergebnis in meine Client-Seite,

 True 0 1 2 3 4 5 6 7 8 9 10 11 Status: 200 OK Content-Type: text/html; charset=utf-8 Content-Length: 10663 {"b322": "R\u00fcppell's Warbler"} 

(Ergebnis abgeschnitten)

Mein Javascript-Code ist,

  $.post(urla,senddata,function(receiveddata){ document.write(receiveddata); 

});

Vielen Dank.

Python ist die beste Programmiersprache der Welt.