所以,我注意到使用 Dart 内置的 HttpServer 类往往会每次都向每个文件发出客户端请求。
在 Apache 上,可以告诉客户端将文件缓存一段最长的时间——Dart 是否支持此功能以减轻 HttpSever 上的负载?
所以,我注意到使用 Dart 内置的 HttpServer 类往往会每次都向每个文件发出客户端请求。
在 Apache 上,可以告诉客户端将文件缓存一段最长的时间——Dart 是否支持此功能以减轻 HttpSever 上的负载?
感谢您的提问!您可以在 HTTP 响应中设置任何 HTTP 标头。
例如:
onRequest(HttpRequest request, HttpResponse response) {
...
response.headers.add("Cache-Control", "max-age=3600");
...
}
如果您想要更复杂的处理,例如尊重 Etags 或 If-Modified-Since,您可能必须自己添加它们。一般来说,在 Nginx 或 Apache 等服务器后面代理 Dart HTTP 服务器是有意义的,然后让该服务器负责处理所有静态文件。