[英]HTML encoding decoding with python
我正在通過jQuery將編碼的HTML發送到我的python ajax處理程序。 這是我的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電子郵件發送。 最好的方法是什么?
對於POST數據,由於POST數據不是作為URI / URL的一部分發送的,因此您不需要encodeURI函數。 如果您不這樣做,則也不需要在服務器端解碼任何內容。
通常,不驗證您從不受信任來源(此處為瀏覽器)獲得的輸入是一個非常糟糕的主意。 即使您認為自己在客戶端進行了整個編碼,也請認為這是不安全的。 長話短說:最好且常用的方法是將內容解析為純文本,而不是HTML。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.