msgpack - 使用js从php服务解压缩数据

时间:2014-08-29 13:24:41

标签: javascript php jquery msgpack

您已创建XMLHttpRequest并使用以下代码获取resp。

    var xhr = new XMLHttpRequest();
    xhr.open("GET", URL, true);
    xhr.responseType = "text";
    xhr.onload = function () 
    { 
        debugger;

        var resp = xhr.response;

        var result = msgpack.unpack(resp);

    };

但未定义的响应。我已经从iOS检查了服务,它运行正常。

1 个答案:

答案 0 :(得分:0)

通过以下代码修复。设置响应类型= arraybuffer。

    var xhr = new XMLHttpRequest();
    xhr.open("GET", URL, true);
    xhr.responseType = "arraybuffer";
    xhr.onload = function () 
    { 
        var resp = xhr.response;

        var uintDataArray = new Uint8Array(resp);
        var strBytes = "";

        for (var i = 0; i < uintDataArray.length; i++)  
        {
            strBytes += String.fromCharCode(uintDataArray[i]);
        }

        var result = msgpack.unpack(strBytes);

    };