在JAVASCRIPT + JSON中编码HTML并在PYTHON中解码它的正确方法是什么?

时间:2012-05-07 15:00:27

标签: python json encoding decoding

我有一个JAVASCRIPT数组allPois,其中包含几个具有以下结构的pois对象:

    var poi = {
        title:  pois[x].title,
        lat:    pois[x].position.lat(),
        lng:    pois[x].position.lng(),
        html:   pois[x].html
    };

这是调用我的服务器的JAVASCRIPT函数:

function save(){

    var jsonizedData = JSON.stringify({theArray:allPois});

    jQuery.ajax({
        type:       'POST',
        url:        'http://localhost:8000/save',
        contentType:'application/json; charset=utf-8',
        dataType:   'json',
        data:       mydata,
        async:      true
    });
}

这是处理请求的服务器端的功能:

def save(request):
   for object in request.POST:
      my_data = simplejson.loads(object)

   return none   

对参数' html'进行编码/解码的最佳方法是什么? (它实际上包含html代码),以便可以在服务器中正确加载?

1 个答案:

答案 0 :(得分:0)

由于属性.html的值为string,因此您无需执行任何操作。 JSON可以正确处理字符串值。你的任何修改只会让事情变得更糟。

您的问题可能就是如何从文本区域获取值。 See this jsfiddle how special characters are handled

但在现代浏览器中,任何步骤都不需要编码/解码。

哦,请确保清理HTML以避免XSS and other attacks