首页 > 解决方案 > NodeJS 相当于 PHP 的 gzuncompress

问题描述

我正在尝试在 NodeJS中复制这个(PHP)

到目前为止,这就是我所拥有的:

import { query } from "../../lib/db.ts";
const zlib = require("zlib");
const pack = require("locutus/php/misc/pack");

async function getGuildEmblem(i) {
  const emblemBlob = await query(`
        SELECT emblem_data as emblemData, name FROM guild
        WHERE guild_id = ${i}
    `);
  const emblemData = emblemBlob[0].emblemData;
  const imgBuff = pack("H*", emblemData);
  const imgB64 = zlib.inflateSync(imgBuff);
  return imgB64;
}

export default async (req, res) => {
  const {
    query: { i },
  } = req;
  if (i) {
    const emblemB64 = await getGuildEmblem(i);
    res.status(200).send(emblemB64);
  } else {
    res.status(400).json({ err: "param" });
  }
};

到目前为止,这是我所知道(和完成)的:

<?php
$res = "D5";
$data = pack('H*', $res);
echo utf8_encode($data);

并且输出是 Õ 这与此处 locutus 的示例完全相同


问题:


预期结果:


额外的:

标签: phpnode.jsnext.js

解决方案


推荐阅读