public String getParametersJsonString(HttpServletRequest request) {
byte[] bt = null;
String json = null;
InputStream in = null;
ByteArrayInputStream bin = null;
GZIPInputStream ginzip = null;
ByteArrayOutputStream out = null;
try {
in = request.getInputStream();
bt = IOUtils.toByteArray(in);
json = IOUtils.toString(bt, DEFAULT_CHARSET);
if (!StringUtils.startsWith(json, "{")) {
//如果不是json格式,則進行解壓
bin = new ByteArrayInputStream(bt);
ginzip = new GZIPInputStream(bin);
out = new ByteArrayOutputStream();
IOUtils.copy(ginzip, out);
json = IOUtils.toString(out.toByteArray(), DEFAULT_CHARSET);
if (StringUtils.isBlank(json)) {
LogUtil.error("gzip解壓請求數據爲空.");
}
}
} catch (IOException e) {
ExceptionUtil.caught(e, e.getMessage());
} finally {
if (in!=null) {
try {
in.close();
} catch (IOException e) {
in = null;
}
}
if (bin!=null) {
try {
bin.close();
} catch (IOException e) {
bin = null;
}
}
if (ginzip!=null) {
try {
ginzip.close();
} catch (IOException e) {
ginzip = null;
}
}
if (out!=null) {
try {
out.close();
} catch (IOException e) {
out = null;
}
}
}
return json;
}
關於gzip服務端讀取方法
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
是否爲GZIPInputStream格式(gzip壓縮格式)
判斷是否爲GZIPInputStream格式(gzip壓縮格式) 轉自 http://wingware.iteye.com/blog/1618561 Java代碼 InputStream i
Bob_Hello
2020-06-16 07:47:22
Java壓縮技術(四) GZIP——Java原生實現
Bob_Hello
2020-02-21 10:27:59
是否爲GZIPInputStream格式(gzip壓縮格式)
判斷是否爲GZIPInputStream格式(gzip壓縮格式) 轉自 http://wingware.iteye.com/blog/1618561 Java代碼 InputStream i
Bob_Hello
2020-06-16 07:47:22
Java壓縮技術(四) GZIP——Java原生實現
Bob_Hello
2020-02-21 10:27:59
Huffman 壓縮解壓縮java實現
爱写代码的汤二狗
2018-09-03 03:13:20
24小時熱門文章