在ServiceStack 5.8.1上启用API响应压缩(gzip)

问题描述 投票:0回答:1

我们有一个在Azure中运行的ServiceStack 5.8.1 API,该API使用EF Core对返回500,000条以上记录的Azure SQL数据库运行查询。调用API方法会将数据的JSON表示形式返回给客户端。

也在Azure中运行的前端客户端是Angular 7.x SPA,它正在对API进行HTTP客户端调用并使用返回的JSON响应。

ServiceStack中是否有一种方法可以启用响应压缩,例如GZIP(非缓存-因为我们需要每个请求的最新数据),它将以压缩格式将JSON响应发送回Angular客户端?

如果可能的话,那么我们可以考虑在Angular客户端中解压缩结果(如果可能的话,以减少通过网络传输的数据量。

angular7 gzip servicestack
1个回答
0
投票

查看方法ToOptimizedResultAsync。如果您想要缓存的响应,则还有ToOptimizedResultUsingCache。

也在这里提到Enable gzip/deflate compression

示例:

var response = new SomeViewModel
{
  Results = ....
}

return base.Request.ToOptimizedResultAsync(response);
© www.soinside.com 2019 - 2024. All rights reserved.