我遇到了这样一种情况:我需要发出 JSONP Ajax GET 请求(跨域),并且我需要发送长度超过 2000 个字符的文档作为参数。
由于各种原因,我无法将它从 JSONP 更改为普通请求,而且我无法在服务器端维护状态以将请求拆分为多个。
考虑到这些限制,有没有办法以某种方式在 Javascript 中压缩长文本,以便我可以将其放入 2000 GET 限制大小内?我还需要知道是否可以在服务器端轻松解压缩它?
因为它是一个 GET 请求,所以它只能作为文本发送,所以二进制压缩可能是不可能的?
最佳答案
切换到 POST 原始数据并使用 JSON 或 XML 通过请求保存和发送大结构。
例如,如果您使用 JQuery,您有
jQuery.post( url, [data], [callback], [type] )
其中数据可以是 xmlDoc、jsonObj、html、文本等...
你可以用类似这样的东西代替数据:
$.post("path/to/my/file.php", { func: "yourFunctionName" },
function(data_returned_from_backend_json){
//use data_returned_from_backend_json.properties
}
, "json");
function yourFunctionName()
{
//save all GET params into a json structure
}
关于jquery - 如何压缩 Javascript 中的 GET 参数以避免达到浏览器大小限制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10335189/