Рекомендации по проверке загрузки файлов Java - PullRequest
1 голос
/ 15 марта 2012

Я реализую простой виджет загрузки изображений в GWT. Перед успешной загрузкой необходимо выполнить несколько базовых проверок, например:

  1. размер
  2. Тип файла

Как лучше всего провести эту проверку?
Насколько мне известно, проверка размера и типа может выполняться только на стороне сервера.
Т.е. сервлет (MyUploadServlet расширяет HttpServlet) выполняет фактическую загрузку файла.
Это единственное место? Какова будет наилучшая практика для проведения таких проверок?

Кроме того, если я смогу получить проверочный код (тип и размер файла изображения), это будет здорово:)

Ответы [ 2 ]

1 голос
/ 15 марта 2012

Проверка может быть лучше выполнена на стороне сервера. В основном я бы порекомендовал вам 2 шага для проверки размера:

1) Проверка заголовков HTTP для длины содержимого. request.getContentLength ()

2) Если заголовки недоступны, выполните проверку фактического размера при чтении входного потока. Поэтому, если вы достигнете предела, вы можете выбросить исключение.

На стороне клиента gwt вы можете проверить исключение и показать соответствующую ошибку.

Определение типа файла может быть не таким простым. Вы можете просто проверить расширение имени файла или использовать определенные проверки типа файла после того, как файл фактически загружен на сервер.

0 голосов
/ 15 марта 2012

HTML 5 имеет разнообразную поддержку для File API, что означает, что некоторые браузеры смогут предоставить вам размер файлов для загрузки ДО общения с сервером. Если вы можете что-то предположить о браузерах, которые вы используете, вы, возможно, захотите найти что-то вроде html 5 file api size и посмотреть, сможете ли вы использовать это в вашем случае.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...