Удаление объекта
Удаление файла и/или директории по протоколу WebDAV реализуется так же просто, как создание коллекции. Для реализации этой задачи послужит приведенный выше код, в котором надо заменить строчку, задающую выполняемый сервером метод, на следующую:
Как видно, в классе WebRequestMethods.Http отсутствует метод Delete, но мы можем задать желаемый метод в виде строки. Она будет отправлена на сервер, главное, чтобы он был в состоянии обработать и выполнить этот метод, а WebDAV-сервер, как мы знаем, на это способен.
В этом случае также лучше использовать конструкцию try/catch для перехвата исключения, которое может возникнуть по причине отсутствия удаляемого объекта.
4 Шифрование содержимого файлов в Облаке Mail.Ru
Можно включить шифрование содержимого файлов (не имен!) «на лету». Ценой будет снижение скорости операций с сетевым диском, в остальном работа с зашифрованными папками на диске ничем отличаться не будет от обычного использования сетевого диска. При заходе через веб-интерфейс или при подключении диска по WebDAV без ввода ключа зашифрованное содержимое файлов будет выглядеть как каша. Весь диск зашифровать не получится, только отдельные папки и их подпапки.
Защищать тем же ключом, что и пароль от Облака, глупо. Поэтому придумайте ключ, отличный от пароля к почте. Например, что-то вроде 0Mdsf%vdfkj4299vffjh42bbLjdsbb2. Но как его сообщить программе? При подключении через WebDAV нельзя указать посторонние свойства вроде второго пароля, поэтому автор wdmrc.exe решил вопрос шифрования творчески — через модификацию логина и пароля и создание папок, на самом деле являющимися командами.
1. Измените в батнике команду net use следующим образом:
... net use M: http://127.0.0.1:801 "здесь_пароль_от_почтыKLMN0Mdsf%vdfkj4299vffjh42bbLjdsbb2" /USER:логин@mail.ru#KLMN ...
Тогда WebDAVCloudMailRu будет знать, что ключ шифрования — 0Mdsf%vdfkj4299vffjh42bbLjdsbb2
Обратите внимание на #KLMN в логине — это разделитель для паролей. То есть всё, что идёт после знака решётки #, будет рассматриваться как разделитель между паролем от учётной записи Mail.Ru и ключом
Если сочетание KLMN в пароле присутствует, используйте другое сочетание. EKLMN, например.
2. Откройте диск в Total Commander’e через плагин WebDAV или в FAR через NetBox. Штатными средствами Windows зашифрованные папки создать нельзя, т.к. не получится ввести символы «>>».
Логин и пароль должны быть такими же, как и в модифицированной команде net use (см. выше), адрес сервера — http://127.0.0.1:801 или подобный.
3. В папке, содержимое которой нужно зашифровать, создайте папку с именем «>>crypt init» без пробелов:
После нажатия «ОК» каталог «>>crypt init» не появится, потому что WDMRC поймёт, что это команда, зашифрует текущую папку и создаст файл .crypt.wdmrc. Не удаляйте его!
Как создать сетевой Яндекс.Диск в Total Commander?
В отличие от предыдущего способа, этот способен решить оба вопроса, озвученных в начале статьи. То есть и вопрос удалённого подключения, и безопасности.
Но для начала вам нужно будет установить дополнительный плагин в Total Commander.
Итак, для установки плагина его нужно вначале скачать. Для этого переходите на страницу плагинов для TC. Находите плагин WebDAV и скачиваете его на компьютер.
Плагины для Total Commander
Распаковываете архив. Далее, запускаете Total Commander – пункт меню «Конфигурация» — «Настройки».
Настройки Total Commander
Выбираете раздел «Плагины» и нажимаете на кнопку «Настройка» в подразделе «Плагины файловой системы (.WFX)»
Далее, нажимаете на кнопку «Добавить» — открываете папку с плагином и выбираете файл плагина, в соответствии с разрядностью вашей операционной системы. У меня 64-разрядная система, и я выбираю файл davplug.wfx64.
Выбрав файл, нажимаете кнопу «ОК». И ещё раз «ОК».
Всё, плагин установлен и всё готово для подключения Яндекс.Диска с помощью WebDAV клиента.
Для этого открываем «Сеть» и видим там папку WebDAV, открываем её.
Открытие WebDAV клиента
Перед вами откроется содержимое папки, где у вас есть два варианта создать удалённое подключение.
Первый вариант, сделать подключение один раз и использовать его постоянно. Но, при этом содержимым диска смогут воспользоваться продвинутые пользователи, которые умеют пользоваться Total Commander.
Второй вариант, использовать быстрое подключение и каждый раз вводить свой логин и пароль при подключении. В таком случае, если вы отключились от диска, то его содержимым можно будет воспользоваться, только введя снова логин и пароль.
Итак, если вы хотите создать постоянное подключение по первому варианту, то нажимаете клавишу F7 – вводите название соединения.
Имя сетевого диска
Далее, заполняете адрес сервера (https://webdav.yandex.ru), логин и пароль от почтового ящика Яндекс. И отмечаете чекбоксы, как указано на скриншоте. Быстро это делается выбором настроек по умолчанию Microsoft IIS.
После того как вы нажмёте кнопку «ОК», у вас появится папка с содержимым Яндекс.Диска.
Открыв эту папку – вы подключаетесь к Яндекс.Диску.
Для отключения от диска достаточно нажать на кнопку «Отключение».
Отключение от диска
Если же вы хотите удалить это соединение, то просто выберите папку и нажмите F8.
Если вы хотите использовать Яндекс.Диск на компьютере, но при этом беспокоитесь, что посторонние могут получить доступ к его содержимому, то для вас подойдёт временное подключение.
То есть, вы подключаетесь к диску, работаете с ним, а когда уходите из-за компьютера, то отключаетесь. При этом повторное подключение возможно только после настройки соединения, где нужны логин и пароль.
Это подключение делается точно так же, как и в первом варианте, только вы не создаёте папу с подключением, а открываете папку Quick connection. И настраиваете подключение.
Быстрое подключение к диску
И перед вами сразу откроется содержимое Яндекс.Диска.
Вот такая простая, но эффективная защита от посторонних глаз. А уже в следующей статья я расскажу как отдельно установить пароль на Яндекс.Диск.
А теперь для закрепления материала предлагаю посмотреть видеоурок, где я шаг за шагом показываю и рассказываю описанные выше действия.
Ну, что же друзья, уверен, вы нашли ответы на свои вопросы, но если появились дополнительные, то я буду рад вам помочь.
А у меня на сегодня всё. Всем желаю удачи и хорошего настроения! До встречи в новых видеоуроках и статьях.
Облачное хранилище Яндекс Диск можно будет подключить к своему компьютеру как сетевой диск, по протоколу WebDAV. После подключения сетевого диска, вы сможете работать с облачным хранилищем Яндекса со своего компьютера, как с обычным диском в операционной системе Windows.
В Яндекс.Диск вы можете хранить свои файлы в «облаке», взаимодействуя с хранилищем, с помощью специальной программы-клиента, или управляя своими данными через веб-интерфейс, используя для этого браузер.
При использовании специальной программы от Яндекса, ваши файлы будут храниться одновременно на компьютере и в облачном хранилище, а при использовании веб-интерфейса, ваши данные будут находиться только в облачном хранилище.
Можно также использовать Яндекс.Диск в качестве сетевого диска. Это позволит вам получить доступ к своим файлам в облачном хранилище непосредственно в Проводнике. Подключение Диска к компьютеру будет происходить с помощью протокола WebDAV.
Удалённое подключение к Яндекс.Диску.
Сразу скажу, — подключить Яндекс.Диск через ftp соединение нельзя. Зато это можно сделать через WebDAV (набор расширений и дополнений к протоколу HTTP).
По сути это-то же самое, для рядового пользователя разницы никакой, только настраивается немного по-другому.
Суть в том, что используя технологию WebDAV, вы удалённо подключаетесь к Яднекс.Диску. Тем самым вы можете создать сетевой диск на своём компьютере и работать с ним через «Проводник» или любой другой файловый менеджер. Примерно все, так же как и при ftp подключении.
При этом все файлы будут храниться на удалённых серверах Яндекса. На вашем компьютере будут отображаться лишь иконки для удобства работы.
И никакой синхронизации с вашим компьютером не происходит, как в случае с установкой приложения Яндекс.Диск на компьютер. То есть файлы будут храниться только в облаке.
В качестве примера создания сетевого диска, я покажу, как это сделать с помощью «Проводника Виндовс» и файлового менеджера Total Commander.
Как создать сетевой Яндекс.Диск в проводнике Windows?
Первым делом отрываете проводник. Далее, в левой панели выберите раздел «Компьютер», а в правой панели нажмите правую кнопку мыши, и в контекстно-зависимом меню выберите пункт «Добавить новый элемент в сетевое окружение».
Добавление нового элемента в сетевое окружение
Здесь ваша задача нажать на кнопку «Далее». Больше выбирать ничего не надо.
На этом шаге нужно ввести адрес сервера для подключения:
И нажать кнопу «Далее».
Далее, нужно ввести название почтового ящика Яндекс (до знака @) и пароль от него.
Ввод логина и пароля
Теперь вводите имя для сетевого диска. Назвать вы его можете как угодно. Разницы это не имеет.
Название сетевого диска
Нажимаете кнопку «Далее» и всё готово. Ваш сетевой диск подлечен.
Сетевой диск — подключен
Таким диском можно пользоваться, как любым другим диском на компьютере. И его содержимое будет доступно всем, кто работает за компьютером. Но только если есть подключение к интернету.
Настройка удаленного доступа к папке через FTP-сервер
FTP (File Transfer Protocol) — протокол передачи файлов, который позволяет обмениваться данными между клиентом и сервером. Для получения удаленного доступа к папке через интернет можно использовать FTP-сервер. В этом разделе мы рассмотрим, как настроить удаленный доступ к папке через FTP-сервер.
- Шаг 1: Установка FTP-сервера
Перед тем, как настроить удаленный доступ, необходимо установить FTP-сервер на ваш компьютер или на сервер. Существует множество FTP-серверов, таких как FileZilla Server, vsftpd, ProFTPD и др. Установите FTP-сервер, который вам больше всего подходит, следуя инструкциям на официальном сайте FTP-сервера.
Шаг 2: Конфигурация FTP-сервера
После установки FTP-сервера необходимо выполнить его настройку. Конфигурация может варьироваться в зависимости от выбранного FTP-сервера, однако обычно требуется указать параметры доступа и настройки безопасности.
Шаг 3: Открытие портов в межсетевом экране
Для обеспечения удаленного доступа к FTP-серверу через интернет необходимо открыть порты в межсетевом экране (файерволе). Обычно FTP использует порт 21 для установки соединения и порт 20 для передачи данных. Убедитесь, что порты 21 и 20 разрешены в настройках вашего межсетевого экрана.
Шаг 4: Создание пользователей и настройка прав доступа
После установки и конфигурации FTP-сервера необходимо создать пользователей, которым будет предоставлен доступ к папке через FTP. Создайте учетные записи пользователей и настройте права доступа к папке, чтобы определить, какие файлы они смогут просматривать, изменять и загружать.
Шаг 5: Проверка удаленного доступа
После настройки FTP-сервера и создания пользователей можно проверить удаленный доступ к папке. Воспользуйтесь FTP-клиентом (например, FileZilla), введите адрес FTP-сервера, имя пользователя и пароль, которые были созданы на предыдущем шаге. После успешного подключения вы сможете просматривать и управлять файлами на удаленном FTP-сервере.
Настройка удаленного доступа к папке через FTP-сервер несложна, но требует выполнения нескольких шагов. После настройки вы сможете быстро и удобно обмениваться файлами между компьютерами через интернет.
Как создать FTP-сервер на Windows
Чтобы создать FTP-сервер на Windows, нужно иметь версию системы Professional, Educational или Enterprise. К сожалению, для домашней версии придётся устанавливать сторонние приложения. Если у вас стоит нужная версия операционной системы, остаётся выполнить несколько действий.
Включаем FTP-компоненты
Первым шагом открываем Панель управления:
Скриншот: Skillbox Media
Переходим во вкладку Программы → Программы и компоненты. Здесь выбираем пункт Включение или отключение компонентов Windows:
Скриншот: Skillbox Media
Появится список, в котором нужно поставить галочку у пункта FTP-сервер, а также найти пункт Службы IIS → Средства управления веб-сайтом. Здесь поставим галочку у пункта Сценарии и средства управления IIS:
Скриншот: Skillbox Media
Нажимаем ОК и дожидаемся, пока все настройки применятся к Windows.
Создаём FTP-сервер
Чтобы использовать сервер, нам понадобится папка, в которой мы будем хранить все файлы. Создадим её на диске C и назовём ftp:
Скриншот: Skillbox Media
Внутри неё можно создать пару файлов и папок. Они понадобятся, чтобы проверить правильность работы FTP-сервера:
Скриншот: Skillbox Media
Теперь нам нужно опубликовать наш сервер. Для этого открываем Диспетчер служб IIS:
Скриншот: Skillbox Media
В открывшемся окне находим слева пункт сайты и кликаем по нему правой кнопкой мыши. Выбираем Добавить FTP-сайт (тут главное не перепутать с веб-сайтом):
Скриншот: Skillbox Media
Теперь нам нужно указать данные нашего сервера. В поле Имя FTP-сайта вписываем любое имя, какое захотите, а во вкладке Физический путь указываем путь до нашей папки ftp. Жмём Далее:
Скриншот: Skillbox Media
Затем открывается окно с дополнительными настройками. В разделе Привязка ничего не меняем, а в SSL выбираем Без SSL. В будущем вы можете попробовать настроить сервер с шифрованием, но сейчас нам надо разобраться, как запустить простой сервер.
Скриншот: Skillbox Media
В последнем окне с настройками нужно выбрать, каких пользователей пускать на сервер, и выдать им разрешения. Поставим галочки для анонимных и обычных пользователей, а ниже укажем, что они смогут читать и записывать данные:
Скриншот: Skillbox Media
Готово — наш сервер создан и опубликован. Увидеть его можно в списке всех серверов:
Скриншот: Skillbox Media
Проверяем, как работает
Чтобы зайти на FTP-сервер, нужно сначала получить IP-адрес нашего компьютера. Для начала — открываем консоль (можно просто вбить в поиске cmd), а затем вводим команду ipconfig:
Скриншот: Skillbox Media
Копируем адрес из графы IPv4-адрес. Далее открываем проводник или любой FTP-клиент и вводим в адресной строке ftp://. Видим наши файлики:
Скриншот: Skillbox Media
Как выбрать приложение для IP-камеры
Можно ли установить сетевой диск по FTP на ПК
И все-таки странно, что программисты Яндекса не выбрали в качестве основного протокола Диска FTP. Ведь данный протокол легко может работать и без специальных программ, а при помощи стандартных возможностей Windows. А что касается безопасности, есть специальный модифицированный протокол SFTP, который является смесью FTP и шифрованного SSH.
Так, чтобы зайти на сервер без специальной программы-клиента, нужно лишь подключить его как сетевой диск на компьютере. То есть вы сможете выполнять операции на сервере, и в это время будете находиться в стандартном проводнике Windows.
Подключение сервера в качестве сетевого диска не займет у вас много времени. Для начала зайдите в «Мой компьютер». Потом наведите курсор на место, где нет каких-либо элементов для выделения и нажмите правой кнопкой мыши. Выберите пункт «Добавить новый элемент в сетевое окружение». После этого перед вами появится специальный мастер добавления сетевых дисков. Создайте новый сетевой диск, чтобы к нему подключить сервер по FTP. Затем пропишите данные для подключения к серверу: имя хоста или его IP-адрес. На следующем шаге уберите галочку возле «Анонимный вход» и пропишите ваши данные для входа.
На конечном этапе добавления нового сетевого диска система предложит вам выбрать имя для созданного окружения. Пропишите любое удобное имя, выберите букву для диска, и нажмите «Готово». Теперь диск появится в файловой системе и в папке «Мой компьютер». После того, как вы нажмете на него, сервер запросит от вас ввод пароля. Далее перед вами откроется сервер, только он будет выглядеть как любой другой диск на вашем компьютере — на нем будут папки и файлы, будто вы и не подключались к сети. В этом и заключается прелесть работы по FTP через стандартные средства операционной системы. Странно, что программисты не учли такую возможность и не доверили сервис Яндекс Диск проверенному временем протоколу передачи данных FTP.
В приятном общении с Яндекс Диском печалит только одно: маленький выделенный объем. Пусть даже есть возможность добавить места, но все равно мало.
Приложение от разработчиков Яндекса не дает одновременно работать с несколькими аккаунтами, стандартные средства Windows не в состоянии подключить несколько сетевых дисков с одного адреса.
Решение было найдено. Это технология WebDAV
и клиент CarotDAV
. Данная технология позволяет соединяться с хранилищем, копировать файлы с компьютера в облако и обратно.
При помощи CarotDAV также можно «перекидывать» файлы из одного хранилища (аккаунта) в другое.
Итак, с инструментами мы определились, теперь приступим к реализации. Запускаем клиент, переходим в меню «File»
, «New Connection»
и выбираем «WebDAV»
.
В открывшемся окне присваиваем имя нашему новому подключению, вводим логин от аккаунта Яндекс и пароль.
В поле «URL»
пишем адрес. Для Яндекс Диска он такой:https://webdav.yandex.ru
Если, в целях безопасности, хотите каждый раз вводить имя пользователя и пароль, то поставьте галку в чекбокс, указанный на скриншоте ниже.
Нажимаем «Ок»
.
При необходимости создаем несколько подключений с разными данными (логин-пароль).
Открывается облако двойным кликом по значку подключения.
Для одновременного подключения к нескольким аккаунтам необходимо запустить еще одну копию программы (дважды кликнуть по исполняемому файлу или ярлыку).
Работать с данными окнами можно, как с обычными папками: копировать файлы туда и обратно и удалять их. Управление происходит через встроенное контекстное меню клиента. Перетаскивание (drag-n-drop) также работает.
Подведем итог. Очевидный плюс данного решения – файлы хранятся в облаке и не занимают место на жестком диске. Также можно завести неограниченное количество Дисков.
Из минусов отмечу следующие: скорость обработки файлов зависит от скорости интернет-соединения. Другой минус – нет возможности получать публичные ссылки для обмена файлами.
Для второго случая можно завести отдельный аккаунт и работать в обычном режиме через приложение, а дисками, подключенными через клиент, пользоваться как хранилищами.
Вот такой интересный способ подключить Яндекс Диск через WebDAV-клиент. Такое решение будет удобно тем, кто планирует работать с двумя и более облачными хранилищами.
Можно ли зайти в Яндекс Диск по протоколу FTP
Во время разработки Яндекс Диска программисты долгое время не могли определиться с протоколом, который выбрать для подключения к сервису. Ведь именно протокол определяет взаимоотношение сервера и клиента, и правила, по которым они будут работать. А значит от выбора протокола зависело то, какие функции будут у Яндекс Диска.
В итоге, выбор был сделан не в пользу протокола передачи данных FTP. Его отбросили, как вариант, вместе с другими мощными протоколами: BitTorrent, Amazon S3 и прочими. В своей статье программисты написали, что хоть и уважают протокол FTP, как один из самых старых и проверенных временем, но его недочеты не позволяют использовать ФТП для такого глобального сервиса, как Яндекс Диск.
А все дело в том, что FTP посчитали небезопасным протоколом для таких целей. Яндекс Диск — это слишком большой сервис, чтобы оставлять в нем дыры, которыми смогут воспользоваться взломщики. Известно, что протокол FTP является открытым, незашифрованным от посторонних глаз, потому при перехвате данных, клиенты с легкостью взламываются. Кроме того, разработчики Яндекс Диска сделали ударение на том, что FTP не поддерживает множество необходимых для работы сервиса операций. В частности, был приведен довод по поводу отсутствия функции передачи файлов вместе с привязанными к ним мета-данными. И последний аргумент против FTP для Яндекс Диска — это надобность использовать посторонние программы для подключения.
Разработчики взялись именно за этот протокол, потому что с ним можно работать как при помощи стандартных средств операционной системы, так и при помощи различных программ. А благодаря открытой лицензии, программисты Яндекса подкорректировали протокол под свои нужды, добавив в него отчетность о действиях на сервере, которой ранее не было.
Air Explorer
Удобный инструмент для управления и обмена файлами между разными облачными хранилищами. Программа работает с двумя десятками популярных сервисов, среди которых есть Google Drive, Dropbox, One Drive, Mega, Amazon, Mail.ru и Яндекс.Диск, реализована поддержка протоколов FTP, SFTP и WebDAV. Внешне Air Explorer представляет собой двухпанельный файловый менеджер, при подключении облачных хранилищ их содержимое отображается в правой и левой колонке.
Управление привычное для большинства обычных файловых менеджеров: копирование, перемещение, удаление, переименование и т.д. выполняется с помощью контекстного меню, копировать данные из одного облака в другое можно также простым перетаскиванием. Среди дополнительных возможностей Air Explorer хотелось бы отметить синхронизацию, встроенный поиск и выполнение операций по расписанию.
Вместо итога
Связывая разные облачные хранилища в единую структуру, описанные выше программы и сервисы оказывают тем самым пользователю неоценимую услугу, существенно упрощая обмен данными и экономя его время. Но за такое удобство приходится платить, и речь в данном случае идет вовсе не о деньгах. Прибегая к помощи посредников, вы так или иначе предоставляете им потенциальный доступ к своим файлам, а значит и снижаете уровень безопасности и конфиденциальности. Так что доверять или не доверять третьей стороне, это уже решать вам.
Загрузка файла на сервер
Последняя операция, без которой наша утилита будет неполной, — это загрузка файла на удаленный хост. Это самая «хитрая» операция. Обсужденные выше операции не вызвали ни малейшего затруднения, но эта оказалась покруче! Я уже рассказывал, что с реализацией загрузки файла были трудности при использовании других средств разработки. И не все гладко было на C#. Вначале в документации посмотрим, какой запрос для заливки файла ждет Яндекс (рис. 3).
В полноценной программе надо осуществлять закачку сразу нескольких файлов (по желанию юзера), выбор файлов по маске, создание иерархии каталогов и, наконец, обработку ошибок. Мы же, чтобы не толочь воду в ступе, все это опустим и сконцентрируемся на загрузке одного заданного файла, без создания папок и обработки ошибок. Все это оставим тебе в качестве домашнего задания. Итак, в подготовленной мной проге из обработчика нажатия на кнопку вызывается метод UpdateFile, ему передаются имя хоста и имя загружаемого файла, которые берутся из соответствующих полей ввода. Начало самого метода подобно рассмотренным выше, однако теперь в заголовке запроса мы передаем на выполнение сервером команду PUT, то есть выказываем наше желание загрузить файл. Если при выполнении предыдущих запросов мы особо не опирались на документацию, то на этот раз она нам очень пригодится: включим в заголовок запроса все рекомендуемые Яндексом поля, а также некоторые дополнительные. Итак, рассмотрим код заголовка, а потом обсудим траблы:
Значения некоторых параметров выведены методом научного тыка. Некоторые свойства зависят от других. Так, лучше отключить постоянное подключение (вторая строчка), ибо при этом генерируется исключение о невозможности одновременной чтения и записи в поток. Следующие два свойства задают тайм-аут для чтения и записи в сетевой поток. Значение -1 означает бесконечность. Размер загружаемого файла может быть неопределенно большим, поэтому мы не можем загадывать на время, которое понадобится для его загрузки. Следующее свойство: AllowWriteStreamBuffering — очень любопытное, оно включает или отключает буферизацию данных перед отправлением. При включении отправляемый файл сначала загружается в память, только после этого выгружается на сервер. Странность этого свойства заключается в том, что на некоторых хостах можно без проблем, отключив буферизацию, залить файл, однако на других будет всплывать исключение о необходимости буферизации. Возможно, это связано с какими-то настройками реестра или связи; не исключаю также различия между сервисами. В случае если буферизация включена и на сервер отправляется большой файл, может не хватить ресурсов (исключение SystemOutOfMemory). В свою прогу можешь добавить флажок для включения и отключения буферизации. Если буферизация отключена, тогда надо включить флаг PreAuthenticate (следующее свойство), с помощью которого данные аутентификации отправляются вместе с заголовком. Следующий параметр SendChunked (только для Яндекс.Диска) позволяет загружать на удаленный хост файлы заранее неопределенного размера, на что Dropbox отвечает исключением. Далее указываем тип передаваемых данных, версию используемого протокола (11 означает 1.1), количество возможных HTTP-подключений: больше одного ни к чему. Запрещаем автоматическое перенаправление. Чтобы задать следующее рекомендуемое поле: “Expect: 100-continue”, включающее ожидание ответа для запроса загрузки, нельзя использовать закомментированное свойство, надо использовать код, который строчкой ниже: request.ServicePoint.Expect100Continue = true;. Последним свойством HTTP-заголовка включается маска для принимаемых объектов, в нашем случае принимаются любые файлы: с произвольным именем и расширением.
После того как запрос сформирован, надо получить сетевой поток, в который мы будем записывать данные, отправляемые на сервер. Также открываем локальный файл для чтения. Выделяем байтовый буфер для временного хранения считанных из файла данных; затем в цикле начинаем читать и отправлять, записывая данные в поток. После этого закрываем сетевой и файловый потоки, в общем, как обычно. Получив ответ от сервера, проверяем HTTP-статус на его равенство флагу Created и сравниваем размер файла с количеством переданных байт; если оба условия выполняются, значит, пересылка успешна, иначе — возникла проблема.