Основы сетевых операций в .NET Framework
Обновлен: Ноябрь 2007
Microsoft .NET Framework предоставляет многоуровневую, расширяемую и управляемую реализацию служб Интернета, которую можно легко и быстро интегрировать в приложения. Для использования этих классы необходимо приводить имена в полной форме либо импортировать соответствующие пространства имен, указывая один или несколько операторов Imports в начале соответствующего кода. Дополнительные сведения см. в разделе Оператор Imports (пространство имен .NET и тип);
Доступ к ресурсам Интернета
Для доступа к интернет-ресурсам посредством модели запрос-ответ требуются три порции информации. Они предоставляются конкретными классами .NET Framework:
Класс Uri содержит универсальный код Интернет-ресурса (URI), содержащий как минимум из трех, а иногда и из четырех частей: идентификатора схемы, задающего коммуникационный протокол, идентификатора сервера; идентификатора пути и необязательной строки запроса.
Класс WebRequest содержит запрос ресурса.
Класс WebResponse предоставляет контейнер для входящего ответа.
Отправка и загрузка данных
Для приложений, которым необходимо делать простые запросы интернет-ресурсов, имеется класс WebClient, предоставляющий методы для отправки или загрузки данных. Так как класс WebClient обеспечивает доступ к ресурсам Интернета посредством класса WebRequest, он может использовать любой зарегистрированный подключаемый протокол.
Пространство имен System.Net.Sockets предоставляет классы TcpClientTcpListener и UdpClient для приложений, которые не используют модель запрос-ответ, а также приложений, которые должны прослушивать сеть. Эти классы отвечают за установление подключений с использованием различных транспортных протоколов и предоставляют сетевые подключения другим приложениям в виде потоков.
Дополнительные сведения содержатся в разделе Requesting Data.
В следующей таблице перечислены типовые задачи, связанные с запросом данных у интернет-ресурса.
To |
См. раздел |
---|---|
Создание интернет-запроса |
|
Отправка данных по сети |
|
Асинхронный запрос к интернет-ресурсу |
|
Доступ к свойствам, специфичным для протокола HTTP |
|
Связывание конкретного запроса с пулом подключений |
|
Настройка экземпляра прокси-сервера |
|
Выполнение асинхронных запросов к интернет-ресурсу |
|
Запрос данных по протоколу TCP |
|
Запрос данных по протоколу UDP |
Подключаемые протоколы
Абстрактные классы WebRequest и WebResponse предоставляют базовые классы для подключаемых протоколов. Создав классы для конкретных протоколов, производные от базовых классов WebRequest и WebResponse, приложение может запрашивать данные из интернет-ресурса и считывать ответ, не указывая используемый протокол.
Дополнительные сведения содержатся в разделе Programming Pluggable Protocols.
В следующей таблице перечислены типовые задачи, связанные с использованием подключаемых протоколов.
To |
См. раздел |
---|---|
Является производным от WebRequest |
|
Является производным от WebResponse |
|
Доступ к свойствам, специфичным для конкретных протоколов |
How to: Typecast a WebRequest to Access Protocol Specific Properties |
Трассировка сети
Трассировка сети предоставляет доступ к сведениям о вызовах методов и о сетевом трафике, созданном управляемым приложением. Эта возможность полезна для отладки приложений на стадии разработки и анализа развернутых приложений. Выходные данные трассировки сети можно настраивать с целью поддержки различных сценариев использования во время разработки и в производственной среде.
Дополнительные сведения см. в разделе Network Tracing.
В следующей таблица перечислены типовые задачи, связанные с трассировкой сети.
To |
См. раздел |
---|---|
Включение трассировки сети |
|
Считывание данных трассировки |
|
Настройка трассировки сети |
Управление кэшем
Кэш предоставляет временное хранилище для ресурсов, запрошенных приложением. Если приложение запрашивает один и тот же ресурс более одного раза, этот ресурс может быть возвращен из кэша, что позволяет избежать повторного его запроса у сервера.
Политика кэша устанавливает правила, по которым определяется, можно ли удовлетворить тот или иной запрос с использованием кэшированной копии запрошенного ресурса.
Дополнительные сведения см. в разделе Cache Management for Network Applications.
В следующей таблице перечислены типовые задачи, связанные с управлением кэшем.
To |
См. раздел |
---|---|
Задание политики кэша на основе расположения |
How to: Set a Location-Based Cache Policy for an Application |
Задание политики кэша по умолчанию на основе времени |
How to: Set the Default Time-Based Cache Policy for an Application |
Настройка политики кэша на основе времени |
|
Задание политики кэша для запроса |
Безопасность
Классы System.Net предоставляют безопасную среду для веб-приложений благодаря встроенной поддержке часто используемых механизмов проверки подлинности интернет-приложений и разрешений на доступ для кода .NET Framework.
Дополнительные сведения см. в разделе Best Practices for System.Net Classes.
В следующей таблице перечислены типовые задачи, связанные с обеспечением безопасности.
To |
См. раздел |
---|---|
Использование SSL-подключений к HTTP-серверу |
|
Использование методов проверки подлинности HTTP для установки проверенного подключения к HTTP-серверу. |
|
Настройка безопасности доступа для кода в приложениях, использующих подключения к Интернету. |
|
Обычная и краткая проверка подлинности. |
|
Проверка подлинности NTLM и Kerberos. |
|
Использование System.Net для защиты веб-служб XML. |
См. также
Основные понятия
Best Practices for System.Net Classes
Configuring Internet Applications