在 React 中解压缓冲区数据

decompress buffer data in react

提问人:Numby 提问时间:11/1/2023 更新时间:11/1/2023 访问量:20

问:

我有一个后端 api,它从包含压缩数据的文件中读取并从该数据返回缓冲区。我想在 React 中解压缩它并将其转换为普通版本。我为此使用了 pako,但它不起作用。代码如下:

//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))
    }
  }
reactjs nestjs compression zlib pako

评论


答: 暂无答案