requestSizeLimitMiddleware function

Middleware requestSizeLimitMiddleware(
  1. int maxBytes
)

Creates request size limit middleware.

Implementation

Middleware requestSizeLimitMiddleware(int maxBytes) {
  return (Handler handler) {
    return (Request request) async {
      final contentLength = request.headers['content-length'];
      if (contentLength != null) {
        final length = int.tryParse(contentLength) ?? 0;
        if (length > maxBytes) {
          Log.w('Request size limit exceeded: $length bytes');
          return Response(413, body: 'Request entity too large');
        }
      }
      return handler(request);
    };
  };
}