From 31b0b7095cd4bb0178aa8cd8ae794ba8d2e7a2aa Mon Sep 17 00:00:00 2001 From: Sergey Matveev Date: Mon, 8 Jan 2018 21:29:37 +0300 Subject: [PATCH] =?utf8?q?=D0=9F=D1=80=D0=BE=D1=81=D1=82=D0=B5=D0=B9=D1=88?= =?utf8?q?=D0=B8=D0=B9=20=D0=B7=D0=B0=D0=B3=D1=80=D1=83=D0=B7=D1=87=D0=B8?= =?utf8?q?=D0=BA=20=D1=84=D0=B0=D0=B9=D0=BB=D0=BE=D0=B2=20=D0=B8=D0=B7=20H?= =?utf8?q?TML=20=D1=84=D0=BE=D1=80=D0=BC=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit https://git.stargrave.org/cgit.cgi/uploader.git/ С появлением смартфонов у родителей, иногда нужно от них передать какие-нибудь файлы с их устройств. Все эти устройства крайне сильно заточены только чтобы работать с Сетью, облаками, Интернетом, чтобы любое действие обязательно сливалось наружу. К сожалению, никаких общих протоколов по которым закачать бы файл -- нет. Пока решил что простой HTML формы было бы достаточно чтобы ко мне залить файл, а дальше я уж сам с ним. От меня никаких проблем -- по HTTP броузер там осилит. python -m SimpleHTTPServer я всегда использовал чтобы быстро поднять HTTP сервер для отдачи файлов. Но вот закачивать он не позволит. На голом Python HTTP сервер вменяемый не напишешь. А тащить зависимости чтобы его поднять на шлюзе не охота -- тяжёлое оно всё. Само собой для этой задачи должен подходить Go. Собственно на нём и написал простого демона принимающего файл загруженный через HTML форму. Ограничение только на количество одновременных соединений (на всякий пожарный). Сохраняет в файл с именем равным текущему времени. При этом высчитывает BLAKE2s хэш и при успешной загрузке, напишет количество переданных байт и этот хэш. -- 2.50.0