App Engine Blobstore - Что я могу сделать, чтобы ограничить размер файла, который пользователь может загрузить? - PullRequest
6 голосов
/ 05 августа 2010

Что я могу сделать, чтобы ограничить размер файла, который можно загрузить?Я знаю, что могу ограничить это на стороне клиента с помощью SWFUpload, но как я могу ограничить это на стороне сервера?

Как защититься от того, что кто-то загрузит файл объемом 1 ГБ и израсходует мою квоту?

Ответы [ 3 ]

7 голосов
/ 13 сентября 2011

В App Engine 1.5.4 SDK добавлена ​​возможность указать ограничение на размер загружаемого BLOB-объекта.

См. maxUploadSizeBytes и maxUploadSizeBytesPerBlob из UploadOptions class.

2 голосов
/ 06 августа 2010

Вы не можете запретить людям загружать файлы слишком большого размера (хотя это может привести к хорошему запросу ).Что вы можете сделать, это проверить размер загруженного большого двоичного объекта и сразу же удалить его, если он слишком большой.

0 голосов
/ 06 августа 2010

Перед вызовом API хранилища данных поместите приведенный ниже код в сервлет, куда вы получаете данные.

// Determine the HTTP method
long maxSize = 1024*1024 * 50; //Limit 50 MB
boolean isPostMethod = request.getMethod().equals("POST");

// Verify the content length
int contentLength = request.getContentLength();
if (isPostMethod && (contentLength < 0 || contentLength > maxSize))
  //posted data size is not in acceptable range
else {
    // Process Data
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...