单个路由的 gzip 响应

Alv*_*vin 3 azure node.js express azure-web-app-service

我使用快速和压缩库:

var compression = require('compression')
var express = require('express')

var app = express()

// compress all requests
app.use(compression())
Run Code Online (Sandbox Code Playgroud)

问题:

  1. 如何为单个路由添加 gzip 响应?
    1. 如果服务器是 IIS 8,托管在 Azure Web 应用程序上,压缩会起作用吗?

rob*_*lep 5

  1. 如何为单个路由添加 gzip 响应?

您可以内联它,就像使用任何其他中间件一样:

app.get('/route', compression([OPTIONS]), function(req, res) {
  ...
});
Run Code Online (Sandbox Code Playgroud)

请注意,compression中间件维护 1KB 数据的默认阈值,低于该阈值的响应将不会被压缩。如果需要,请参阅有关如何更改此设置的文档。

  1. 如果服务器是 IIS 8,托管在 Azure Web 应用程序上,压缩会起作用吗?

我认为是这样,但无法明确说明,因为我没有任何 IIS/Azure 经验。但为什么不尝试一下呢?