Версия для печати
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум на Исходниках.RU > Delphi: Сетевое программирование > На каких компонентах лучше реализовать функции веб сервиса


Автор: SilverShield 21.02.23, 10:57
Добрый день, коллеги! Есть приложение, написанное на Delphi XE7 и обернутое как служба Windows.
В него потребовалось добавить функционал: при обращении к приложению по сети (как вариант по http или https), запрашивать с подключившегося пароль. Если пароль верный, то обрабатывать от клиента два вида команд:
1). получение списка файлов. При получении такой команды и пути, вернуть список всех каталогов и файлов, размещенных по этому пути.
2). передать файл. Входящий аргумент тут путь. По этой команде приложение передает клиенту файл, располагающийся по указанному пути.

Это наверняка какая-то очень типовая задача. Просьба подсказать, по каким ключевикам можно найти описание реализации такой задачи.
Или какие компоненты лучше использовать.

Пока из идей - применять TIdHTTP и через get/post передавать json с командами и списками.

Автор: Profi 21.02.23, 14:03
Цитата SilverShield @
применять TIdHTTP

У TIdHTTP есть метод Get, где в качестве второго параметра можно передать TStream куда закачаются данные. Для отображения процесса можно использовать OnWork* делегаты.
Цитата SilverShield @
через get/post передавать json с командами и списками.

POST - метод на запись. Для обоих команд (получение списка и скачевания файла): GET - это все что нужно.
По поводу авторизации - не уверен как оно сделано у TIdHTTP. Но тут нужен либо cookie/token (второе лучше), либо же передавать credentials с каждым запросом.

Автор: SilverShield 21.02.23, 14:34
Цитата Profi @
, благодарю. В принципе можно в передаваемых данных всегда пароль включать и реагировать на команду после сверки пароля.

Powered by Invision Power Board (https://www.invisionboard.com)
© Invision Power Services (https://www.invisionpower.com)