s3에서 개체를 당깁니다. 객체는 압축되어 있으므로 압축을 풀고 내용을 일부 문자열과 비교할 수 있어야합니다. 내 문제는 제대로 압축을 풀 수없는 것 같습니다. 이것은 내가 무슨 일이 일어나고 있는지입니다 : s3 zip -> 전선 -> JS 버퍼로 -> ???JS에서 문자열 압축 해제
내가 다음에 할 수있는 일이 확실하지 않습니다. 나는 겉으로는 pako와 lazutf8과 같은 모든 것을 시도해 보았지만 문자열은 감압 시키지만 주사위는 사용하지 않았습니다.
다음lzutf8.decompress(buffer,{outputEncoding: "String"}, (result, error) => {
if (err) console.log(err);
if (data) console.log(data);
});
가 파코와 시도이다 : 여기
은 lzutf8와 시도이다pako.ungzip(buffer,{to: "string"}, (result, error) => {
if (error) console.log(err);
if (result) console.log(data);
})
파코는 "잘못된 헤더 확인"을 발생하고, 자동으로 아무것도하지 않습니다 lzutf8.
나는이 도서관들과 결혼하지 않았으므로 그 일을 할 다른 것이 있다면 무엇이든 해봐서 기쁩니다. 내 문제는 인코딩 유형과 관련이있을 것 같습니까? 확실하지. 여기
내 코드의 관련 부분의 모습입니다 :let pako = require('pako');
let streamBuffers = require('stream-buffers');
let ws = fs.createWriteStream(process.cwd() + 'path-to-file');
let rs = new streamBuffers.ReadableStreamBuffer();
objects.forEach((obj) => {
console.log(obj);
rs.on("data", (data) => {
ws.write(pako.ungzip);
})
rs.push(obj);
})
압축되었거나 압축되어 있습니까? 이들은 완전히 다른 두 가지입니다. – tadman
압축. 나는 그 차이를 모른다 고 생각한다. 나는 방금 gzip으로 변경한다고 들었지만 ... – bwighthunter
[Zip] (https://en.wikipedia.org/wiki/Zip_ (file_format))은 하나 이상의 파일과 디렉토리를 인코딩하는 매우 특정한 파일 형식입니다. . [gzip] (https://en.wikipedia.org/wiki/Gzip)은 일반적으로 임의의 데이터 스트림이나 단일 파일에서 사용되는 압축 방법입니다. 어떤 유형의 거래를해야하는지 알 필요가 있습니다. 형식이 완전히 다릅니다. – tadman