问题出在print语句上。在app引擎中避免打印, 使用记录器。
我有一个包含unicode字符串的python dict。我需要将dict发送到javascript代码来进行页面刷新。我正在做这样的事情。
map=getMap()
return Response(simplejson.dumps(map))
在javascript代码中我怎么得到以下回复,
True,0,1,2........... {map data}.
我原本只期待{map data}
而不是True,0,1,2...
作为前缀。你知道吗
为什么会发生这种情况。它仅在存在unicode数据时发生。
使用正常的ascii数据,它不会发生。
这是我的真实代码。
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))
数据是utf-8文件可以包含以下内容。
{'b322': u"R\xfcppell's Warbler"}
(从实际文件复制,\ xfc是utf-8编码的 人物ü。在我的类文件的顶部我有
头。
我在客户端得到以下结果,
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"}
(结果截断)
我的javascript代码是,
$.post(urla,senddata,function(receiveddata){
document.write(receiveddata);
});
感谢。