对于isBase64Encoded,AWS Gzip压缩在java中不起作用

我一直在研究Gzip的响应,但是它的工作在nodejs中很好,但是相同的代码在java平台中不起作用。 经过深入挖掘,我发现key是Base64Encoded:true在客户端(Chrome浏览器专门)中没有正确识别,

public class ExampleHandler1 implements RequestHandler<AwsProxyRequest,AwsProxyResponse> { @Override public AwsProxyResponse handleRequest(AwsProxyRequest input, Context context) { AwsProxyResponse response = new AwsProxyResponse(200, Collections.singletonMap("X-Powered-By", "AWS Lambda & serverless"), "Aaytu"); try { HashMap<String, String> headermap = new HashMap<>(); headermap.put("Content-Encoding", "gzip"); headermap.put("Content-Type", "text/html"); String responseString = Base64.getMimeEncoder().encodeToString(GzipCompressor.compress("Hello there..!!!").getBytes()); AwsProxyResponse retVal = new AwsProxyResponse(200, headermap, responseString); retVal.setBase64Encoded(true); return retVal; } catch (Exception e) { } return response; } } 

Interesting Posts