【发布时间】:2012-04-04 20:13:01
【问题描述】:
在发送 JSON 时,我需要一种方便的方法来取消转义字符串字段中的 HTML 字符。我认为写一个自定义的json.JSONEncoder 就可以了。我的编码器是这样的:
import jinja2, json
class EscapingJSONEncoder(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, basestring):
obj = jinja2.Markup(obj).unescape()
return json.JSONEncoder.default(self, obj)
我在default 中放置了一个调试语句,但它从未出现,所以我假设编码器在字符串编码到达我的自定义default 实现之前处理它。
我怎样才能做到这一点?
【问题讨论】:
-
你如何使用这个类?
标签: python json encoding escaping