2015-01-26 98 views
0

我正在使用RestBuilder插件使用REST api。我得到一個響應,其中身體被壓縮:GZIP解壓縮:ed響應(Grails/Groovy)

Content-Encoding=[gzip] 

Groovy/Grails提供任何簡單的訪問/原生方法來解碼gzip壓縮?我發現的唯一的東西是本地Java zip api(例如GZIPInputStream)。有人有更好的主意嗎?

回答

0

春HttpComponents會自動處理解碼:

HttpComponentsClientHttpRequestFactory clientHttpRequestFactory = new HttpComponentsClientHttpRequestFactory(HttpClientBuilder.create().build()); 
RestTemplate restTemplate = new RestTemplate(clientHttpRequestFactory); 

ResponseEntity<String> response = restTemplate.exchange(
     "some/url/", HttpMethod.GET, new HttpEntity<Object>(requestHeaders), 
     String.class); 
0

基本上,你有兩個選擇在這裏:

  • GZIPInputStream
  • 配置GZIP減壓在Tomcat中,看到here
+0

我喜歡第二種選擇,但這需要我配置嵌入式tomcat實例,以便測試環境有效。我會對此稍微考慮一下。 – john 2015-01-29 18:46:55