#http #delphi #firemonkey #indy10 #idhttp
#http #delphi #firemonkey #indy10 #idhttp
Вопрос:
Кто-нибудь может помочь мне с созданием папки на моем HTTP-сервере (это SanDisk Connect WiFi)
У SanDisk есть собственный адрес: http://172.25.63.1/myconnect /
Я могу с помощью Indy с Android выполнить следующее :
- загружайте файлы с ->> IdHTTP1.Get
- загрузите отдельные файлы в ->> IdHTTP1.Put
- удалить файлы на HTTP ->> IdHttp1.Delete(‘http://172.25.63.1/myconnect/XYZ.pdf ‘,Тстрингстрим.Создать («));
Но я не могу найти метод, как создать КАТАЛОГ (ПАПКУ).
Может ли у кого-нибудь быть лучший опыт, как у меня?
Большое спасибо за вашу помощь
Комментарии:
1. В протоколе HTTP нет команд для создания папок. Вероятно, вам понадобится
POST
скрипт на стороне сервера, который затем создаст папку.2. Возможно, вы захотите попробовать MKCOL.
3. Спасибо за советы всем. Пожалуйста, у вас есть какой-нибудь пример с POST? Или любой пример с MKCOL? Спасибо за вашу помощь!
Ответ №1:
Для создания папки на стороне HTTP-сервера требуется, чтобы сервер поддерживал протокол WEBDAV, который является расширением протокола HTTP.
На стороне клиента, Indy в вашем случае, вы должны отправить команду MKCOL на HTTP-сервер. В Indy есть TIdWebDAV
компонент, у которого есть DAVMakeCollection()
метод отправки MKCOL
команды.
Примечание: WebDAV описан в этой спецификации, но не все серверы его реализуют.