在javascript中解压缩gzip压缩数据

时间:2014-12-22 18:42:49

标签: javascript

我正在像这样用java压缩gzip格式的数据

Object obj = parser.parse(new FileReader("/home/netstorm/FinalFunnelData.json"));
JSONObject jsonObject = (JSONObject) obj;
String data = jsonObject.toJSONString();

ByteOutputStream bos = new ByteOutputStream();

GZIPOutputStream gzip = new GZIPOutputStream(bos);
byte B_ARRAY[] = new byte[1024];
gzip.write(data.trim().getBytes());
gzip.close();
// response.setHeader("Content-Type", "application/json");
//response.setHeader("Content-Encoding", "gzip");
System.out.println(bos.toString());

out.println(bos.toString());

但是我无法在javascript端解压缩它?

1 个答案:

答案 0 :(得分:1)

您的代码中唯一突出的是:

out.println(bos.toString());

gzip的数据是二进制的,因此您无法将其视为文字(toString()println)。

我不是Java专家,但您可能想尝试

GZIPOutputStream gzip = new GZIPOutputStream(out);

直接提供out,而不是先将其放在ByteOutputStream中,它可能会做正确的事情。