如何在SpringBoot中更改HandlerInterceptorAdapter中的响应?

时间:2018-06-12 11:04:56

标签: java spring compression gzip

我有一个用Java编写的后端(SpringBoot),它将响应发送到前端。我正在使用json中的太多数据,所以我决定使用GZIP压缩它以加快交易,但我发现代码中有几个错误,因为我不太清楚如何处理某些类

我使用postHandle()方法和上面的代码(我在其他问题的stackoverflow中找到):

d3.csv("TraitData.csv", function(d) {
  return {
    city: d.City,
    continent: d.Continent,
    country: d.Country,
    dimension: d.Dimension,
    identity: d.Identity,
    score: +d.Score,
    state: d.Subdivision,
    trait: d.Trait,
    index: d.Index,
    longitude: d.Latitude,
    latitude: d.Longitude
  }
}).then(function(data) {

  var varScore = d3.nest()
    .key(function(d) { return d.dimension; })
    .rollup(function(v) { return {
      totalscore: d3.sum(v, function(d) { return d.score; }),
        }; })
    .entries(data);
  var varDimensionGroup = d3.map(data, function(d) {return d.dimension;}).keys();
  var varDimension = varDimensionGroup.length;
  var svgWidth = 1250;
  var svgHeight = 300;
  var barPadding = 5;
    var barWidth = (svgWidth/varDimension);

  console.log(varScore);
  console.log(varDimensionGroup);
  console.log(varDimension);
  console.log(svgWidth);
  console.log(svgHeight);
  console.log(barPadding);
  console.log(barWidth);

var svg = d3.select("body").selectAll("#bar")
  .append("svg")
  .attr("width", svgWidth)
  .attr("height", svgHeight);

var barChart = svg.selectAll("rect")
    .data(varDimensionGroup)
    .enter()
    .append("rect")
    .attr("height", varScore)
    .attr("width", barWidth - barPadding)
    .attr("transform", function (d,i) {
         var translate = [barWidth * i, 0];
         return "translate("+ translate +")";
    });
});

问题是我的请求没有getBytes()方法,因此无法完成。

我知道如何做到这一点?我需要压缩从后端发送到前端的每个数据。

提前谢谢!

0 个答案:

没有答案