6

我遇到了一种情况,我需要发出 JSONP Ajax GET 请求(跨域),并且我需要发送长度超过 2000 个字符的文档作为参数。

由于各种原因,我无法将其从 JSONP 更改为普通请求,也无法在服务器端维护状态以将请求拆分为多个。

鉴于这些限制,有没有办法在 Javascript 中以某种方式压缩长文本,以便我可以将其放入 2000 GET 限制大小内?我还需要知道我是否可以在服务器端轻松解压它?

因为它是一个 GET 请求,它只能作为文本发送,所以可能无法进行二进制压缩?

4

1 回答 1

2

切换到 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
}

来源:http ://docs.jquery.com/Post

于 2012-04-26T14:21:57.437 回答