【问题标题】:Compress JSON responce in PHP在 PHP 中压缩 JSON 响应
【发布时间】:2014-11-16 10:20:18
【问题描述】:

我有一个简单的 MVC 模型。我正在做一个 Ajax 请求,我在其中发送一些要由 PHP 处理的数据并将数据库记录作为 JSON 检索。由于这个对象可能非常大,有什么方法可以在 PHP(服务器端)上压缩/加密它并在 Javascript 端(客户端)上解密它

$.ajax({
    url: "/php/function/link/",
    dataType: 'json',
    data: {
            "date": date,
          },
    type: "POST", 
    success: function(_data){
              // load encrypted data here and decrypt it.
          },
    error: function() {
       alert("Some error fetching!");

    }

我尝试使用以下方法,但它们似乎不起作用(在 javascript 端解压缩它们时出错):

  1. JSONC
  2. https://stackoverflow.com/a/11901649/1443702

还有其他更好的方法吗? 我只需要:

在javascript上压缩数据以从客户端传递->将其发送到服务器(PHP)->对其进行解压缩并计算数据库查询->对其进行压缩->将其传递给javascript(客户端)->对其进行解压缩

【问题讨论】:

    标签: javascript php ajax json


    【解决方案1】:

    最好的方法就是在 Web 服务器中启用 HTTP 流量压缩。所有现代浏览器和服务器都支持它。阅读有关HTTP_compression 的更多信息。而且您将获得额外的好处:您的所有流量都将被压缩,而不仅仅是 AJAX 流量。

    【讨论】:

      【解决方案2】:

      对于 php - 你可以试试这个:http://rosettacode.org/wiki/LZW_compression#PHP

      对于 JavaScript - http://rosettacode.org/wiki/LZW_compression#JavaScript

      理想情况下,您应该避免发送大型数据集,除非该用例不可避免。我建议你重新考虑你的设计。但最近我遇到了类似的用例,作为产品需求的一部分,我需要在 JavaScript 中压缩处理 5MB 的 JSON 数据(部分)。我尝试了上述方法,并且能够实现 50% 的压缩。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-11-02
        • 1970-01-01
        • 2019-12-06
        • 2013-05-21
        • 1970-01-01
        • 2011-01-29
        • 1970-01-01
        • 2012-02-12
        相关资源
        最近更新 更多