Để xử lý một thân yêu cầu lớn trong HTTP POST hoặc PUT, dựa trên HttpServletRequest.getContentLength()
không phải là một ý tưởng hay vì nó chỉ trả về giá trị số nguyên, hoặc -1 cho các cơ quan yêu cầu> 2GB.javax.servlet.HttpServletRequest.getContentLength() trả về int chỉ
Tuy nhiên, tôi không thấy lý do gì, tại sao không nên cho phép các cơ quan yêu cầu lớn hơn. RFC 2616 nói
Bất kỳ chiều dài nội dung nào lớn hơn hoặc bằng 0 là giá trị hợp lệ.
Có hợp lệ để sử dụng HttpServletRequest.getHeader('content-length')
và phân tích cú pháp này thành Long thay thế không?
Không chắc chắn nếu nó áp dụng cho tải lên, nhưng bạn cũng có thể muốn xem mã hóa chunked. – McDowell
Java Servlet ra mắt vào năm 1997; 2GB là khá không thể tưởng tượng vào thời điểm đó. thậm chí còn có đĩa cứng người tiêu dùng 1GB trở lại không? RFC 2616 là ngày 1999. – irreputable