decompress buffer data in react

45 Views Asked by At

I have a backend api that reads from a file which contains compressed data and return a buffer from that data. I want to decompress it in React and convert it to normal version. I used pako for that but it did not work. Here is the code:

//backend
 async bulkGet(veritabaniId: number): Promise<any> {
const filePath = join(
  envConfig.quadsDataPath,
  veritabaniId.toString(),
  'quad_data.json',
);

const fileExists = existsSync(filePath);

if (!fileExists) {
  return [];
}
return new Promise<any>((resolve, reject) => {
  fs.readFile(
    join(
      envConfig.quadsDataPath,
      veritabaniId.toString(),
      'quad_data.json',
    ),
    'binary',
    async (error, data) => {
      if (error) {
        reject(error);
      } else {
        try {
          resolve(Buffer.from(data, 'binary'));
        } catch {
          resolve([]);
        }
      }
    },
  );
})};

//react.js
      const { data: quadsData } = await quadService.quadLookup({
    blockSpinner: true,
  });

  if(quadsData) {
    const decompressedData = pako.inflate(new Uint8Array(quadsData),{to: 'string'});

    if(decompressedData) {
      setQuadsData(JSON.parse(decompressedData))
    }
  }
0

There are 0 best solutions below