我有这样的字典:
data = {"data":"http://abc/def"}
当我致电json.dumps(data)
时,我明白了:
'{"data":"http://abc/def"}'
但我想要这个:
'{"data":"http:\/\/abc\/def"}'
因为我使用jquery来解析json但似乎它不理解未转义的solidus,或者有什么方法可以让jquery理解?
更新
例如,这是我的json数据
{"data": ["http://abc.com/aaaaaaaa/bbbbbbbbb/cccccccccc/xyz.mp3"]}
这是我的成功函数
function showResult(result) {
$.each(result.data, function(i, item){
link = $('<a>').attr('href', item).text(item)
$("#result").append('<br>')
$("#result").append(link);
});
}
结果应该是
的超链接http://abc.com/aaaaaaaa/bbbbbbbbb/cccccccccc/xyz.mp3
但我有一个指向
的超链接http://abc.com/aaaaaaaa/bbbbbbbbb/cccccccccc/xyz.mp3
如果用'\ /'替换所有'/',一切都很好
答案 0 :(得分:5)
通常你没有在JSON中转义正斜杠,但如果你确定这是你的问题,你可以简单地这样做:
s = json.dumps(data)
s = s.replace("/", "\\/")