js pako. inflate 압축 풀기 zlib 압축 파일
이 예 는 브 라 우 저 localstorage 가 위 에서 압축 을 푼 후의 대량의 데 이 터 를 저장 하 는 동시에 XML HTTPRequest 2 가 바 이 너 리 데이터 흐름 을 지원 해 야 하기 때문에 ie 저 버 전 브 라 우 저 는 적용 되 지 않 습 니 다.
\ # 방법 코드
/**
* XMLHttpRequest2
*/
ajax2 = function (opts) {
var XHR = new XMLHttpRequest();
XHR.open(opts.type || 'GET', opts.url, true);
XHR.responseType = opts.dataType || 'arraybuffer';
XHR.onload = function(e) {
opts.success && opts.success(this.response);
};
XHR.onerror = function (err) {
opts.error && opts.error(err);
}
XHR.send();
};
/**
* zlib
* @param url url
* @param callback
*/
getZlibBasicData = function (url, callback) {
//
function successHandler(data) {
data = new Uint8Array(data);
console.log(data);
try {
var result = JSON.parse(pako.inflate(data, { to: 'string' }));
callback && callback({
code: 0,
msg: 'Success',
data: result
});
} catch (e) {
callback && callback({
code: 2,
msg: e,
data: data,
url: url
});
}
};
//
function errorHandle(err) {
callback && callback({
code: 1,
msg: 'ERROR: getZlibXmqData() Ajax2 ...',
data: err
});
};
//
ajax2({
url: url,
// dataType: 'arraybuffer',
// type: 'GET',
success: successHandler,
error: errorHandle
});
};
\ # 사용
//
var url = 'http://config-1253933147.file.myqcloud.com/app/xmq_data20170927344.zip';
// json
getZlibBasicData(url, function (res) {
console.log(res);
});
pako 의 사용 은 깊이 연구 하지 않 았 습 니 다. 필요 한 학생 은 git 에 가서 상세 한 정 보 를 읽 을 수 있 습 니 다.
pako 원본 코드:https://github.com/nodeca/pako
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.