用python实现HTML编解码

2024-09-29 21:36:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我通过jQuery将编码的HTML发送到pythonajax处理程序。以下是我的jQuery代码:

var animal_data = encodeURI( $('#animal-list-table').html() ); // something like this: %0A%20%20%20%20%20%20%20%20
mydata = 'action=send_mail&animal_data='+animal_data
$.ajax({
    type: 'POST',
    url: '/customer/templates/slakteweb/ajax-handler',
    data: mydata,
    processData: false,
    success: function(result){
        console.log(result);
    }
});

在ajax处理程序中,我尝试了以下方法:

import urllib
animal_data = site.param('animal_data')
animal_data_html = urllib.unquote(animal_data).decode('utf8')

但我想打印HTML标签和所有东西,这样我就可以把它作为HTML电子邮件发送。最好的办法是什么?你知道吗


Tags: 代码处理程序编码datavarhtmlajaxresult
1条回答
网友
1楼 · 发布于 2024-09-29 21:36:21

对于POST数据,您不需要encodeURI函数,因为POST数据不是作为URI/URL的一部分发送的。如果不这样做,也不需要在服务器端解码任何东西。你知道吗

通常情况下,不验证从不受信任的源(这里是浏览器)获得的输入是一个非常糟糕的主意。即使你认为你在客户端完成了所有的编码,也要考虑它的不安全性。长话短说:最好和常用的方法是将内容解析为纯文本,而不是HTML。你知道吗

相关问题 更多 >

    热门问题