C # - отправить файл по HTTP - PullRequest
       8

C # - отправить файл по HTTP

2 голосов
/ 02 декабря 2011

В среде сервера / клиента мне нужно отправить простой текстовый файл по протоколу HTTP.

Типичный сценарий:
Клиент присоединяется к серверу, и сервер отправляет строку, сообщающую клиенту URL-адрес для загрузки текстового файла. URL будет:

«IP: PORT / folder / folder / file.txt» (где «IP» и «PORT» являются фактическими IP и порты IE: 127.0.0.1:1234)

Мне нужен сервер, чтобы разрешить подключение к расположению файлов и только к расположению файлов. Клиент с закрытым исходным кодом, и поэтому я не могу контролировать его код. Он должен действовать как HTTP-сервер, но только для этого файла или хотя бы подпапки. Вы должны быть в состоянии ввести URL-адрес в адрес браузера и прочитать содержимое файла.

Какой лучший способ сделать это?

Ответы [ 2 ]

3 голосов
/ 02 декабря 2011

Самый простой способ - использовать класс HttpListener.

Документация содержит пример, который показывает вам, как настроить прослушиватель и получить запрос, но не содержит прямого указания, как проверить, какой файл был запрошен и как передать этот файл клиенту. Однако и то, и другое легко сделать и не займет много кода.

1 голос
/ 02 декабря 2011

Вы можете попытаться использовать существующий веб-сервер, такой как Apache , для обслуживания этих файлов.

Также, если это какое-то учебное упражнение. Вы можете реализовать свой собственный простой HTTP-сервер в C #

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...