我想编码所有的数据被ajax请求(所以数据必须在服务器端编码),然后一旦数据被客户端接收,它将通过JS解码,然后处理为可读的HTML数据。
我使用PHP在服务器上呈现数据。最有效、最快、最简单的方法是什么?
谢谢!
你不是在尝试重新发明HTTP请求/响应吧?如果是这样,就放弃AJAX,直接请求一个页面。
然而,如果你只是试图加载"一些"HTML内容转储到页面上的容器那么jQuery有一个简单的方法叫做.load()
更新:根据评论中的讨论,这里是一个不安全的快速混淆技术在服务器端的PHP和客户端的JS之间使用ROT13。
我想再次强调,这个答案只是关于一种技术——因为从这个过程中除了额外的开销之外没有任何收获——因此我不建议使用它。
<?php
function rot13($s){
return !$s ? "" : strtr($s,
"NnOoPpQqRrSsTtUuVvWwXxYyZzAaBbCcDdEeFfGgHhIiJjKkLlMm",
"AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz");
}
//encode the HTML content
$encodedStr = rot13($originalHTML);
?>
发送到浏览器后,用JavaScript解码:
String.prototype.rot13 = function(){
return this.replace(/[a-zA-Z]/g, function(c){
return String.fromCharCode((c <= "Z" ? 90 : 122) >= (c = c.charCodeAt(0) + 13) ? c : c - 26);
});
};
//decode the HTML content
var decodedHTML = ajaxResponseHTML.rot13();
通过JSON与PHP通信,json_encode()
和json_decode()