Форум сайта python.su
0
В общем вот чтото вроде кода по заливке файла на сервер , все работает , вопрос в следующем , как ограничить размер передаваемого файла ?
string = cgi.FieldStorage()
def upload(upload_dir):
filedata = string.getvalue(“file”, “”)
assert filedata == string.value
fstrm = open(upload_dir+“/”+“file”, ‘wb’)
fstrm.write(filedata)
fstrm.close()
Офлайн
0
Я не совсем понял. А почему так не подходит?
if len(string.value) > MySettingsClass.max_file_len:
return_cgi_exception_или_что_там_нужно_делать
Я с cgi не работал так что может чего-то не догнал :)
Офлайн
0
Можно это сделать с помощью apache, используя дириктиву LimitRequestBody. http://httpd.apache.org/docs/2.0/mod/core.html#limitrequestbody
Офлайн
0
thanks :)
Офлайн
0
niro, а JS что не сделаешь?
Офлайн
0
Ограничение с помощью js - это вещь чисто условная и пригодится только для удобства чтоб юзеру сразу сообщить что такой файл слишком большой, но его легко обойти. Без проверки на стороне сервера не обойтись.
Офлайн
0
slivlen1) проверяем на клиенте (чтобы сеть и сервер не грузить попусту)
Ограничение с помощью js - это вещь чисто условная и пригодится только для удобства чтоб юзеру сразу сообщить что такой файл слишком большой, но его легко обойти. Без проверки на стороне сервера не обойтись.
Офлайн
0
если б я знал js …
Офлайн
0
Офлайн
0
А как аплоадить через форму несколько файлов (неопределенное число)?
Офлайн