Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Представляет привязку, которую служба Windows Communication Foundation (WCF) может использовать для настройки и предоставления конечных точек, которые могут взаимодействовать с веб-службами и клиентами на основе ASMX и другими службами, которые соответствуют WS-I базовому профилю 1.1.
<configuration>
<system.serviceModel>
<bindings>
<basicHttpBinding>
Синтаксис
<basicHttpBinding>
<binding allowCookies="Boolean"
bypassProxyOnLocal="Boolean"
closeTimeout="TimeSpan"
hostNameComparisonMode="StrongWildCard/Exact/WeakWildcard"
maxBufferPoolSize="Integer"
maxBufferSize="Integer"
maxReceivedMessageSize="Integer"
messageEncoding="Text/Mtom"
name="String"
openTimeout="TimeSpan"
proxyAddress="URI"
receiveTimeout="TimeSpan"
sendTimeout="TimeSpan"
textEncoding="UnicodeFffeTextEncoding/Utf16TextEncoding/Utf8TextEncoding"
transferMode="Buffered/Streamed/StreamedRequest/StreamedResponse"
useDefaultWebProxy="Boolean">
<security mode="None/Transport/Message/TransportWithMessageCredential/TransportCredentialOnly">
<transport clientCredentialType="None/Basic/Digest/Ntlm/Windows/Certificate"
proxyCredentialType="None/Basic/Digest/Ntlm/Windows"
realm="String" />
<message algorithmSuite="Basic128/Basic192/Basic256/Basic128Rsa15/Basic256Rsa15/TripleDes/TripleDesRsa15/Basic128Sha256/Basic192Sha256/TripleDesSha256/Basic128Sha256Rsa15/Basic192Sha256Rsa15/Basic256Sha256Rsa15/TripleDesSha256Rsa15"
clientCredentialType="UserName/Certificate" />
</security>
<readerQuotas maxArrayLength="Integer"
maxBytesPerRead="Integer"
maxDepth="Integer"
maxNameTableCharCount="Integer"
maxStringContentLength="Integer" />
</binding>
</basicHttpBinding>
Атрибуты и элементы
В следующих разделах описаны атрибуты, дочерние и родительские элементы.
Attributes
| Свойство | Description |
|---|---|
allowCookies |
Логическое значение, указывающее, принимает ли клиент файлы cookie и распространяет их на будущие запросы. Значение по умолчанию — false.Это свойство можно использовать при взаимодействии с веб-службами ASMX, которые используют файлы cookie. Таким образом, вы можете убедиться, что файлы cookie, возвращенные с сервера, автоматически копируются во все будущие клиентские запросы для этой службы. |
bypassProxyOnLocal |
Логическое значение, указывающее, следует ли обходить прокси-сервер для локальных адресов. Значение по умолчанию — false.Интернет-ресурс является локальным, если он имеет локальный адрес. Локальный адрес — это адрес, который находится на том же компьютере, локальной локальной локальной сети или интрасети и определяется синтаксически, отсутствием периода (.), как и в URI http://webserver/ и http://localhost/.Установка этого атрибута определяет, настроены ли конечные точки с помощью BasicHttpBinding использовать прокси-сервер при доступе к локальным ресурсам. Если этот атрибут имеет значение true, запросы к локальным интернет-ресурсам не используют прокси-сервер. Используйте имя узла (а не localhost), если вы хотите, чтобы клиенты проходили через прокси-сервер при разговоре со службами на том же компьютере, когда для этого атрибута задано значение true.При использовании этого атрибута falseвсе запросы к Интернету выполняются через прокси-сервер. |
closeTimeout |
TimeSpan Значение, указывающее интервал времени, предоставленный для завершения операции закрытия. Это значение должно быть больше или равно Zero. Значение по умолчанию — 00:01:00. |
hostNameComparisonMode |
Указывает режим сравнения имен узла HTTP, используемый для синтаксического анализа URI. Этот атрибут имеет тип HostNameComparisonMode, который указывает, используется ли имя узла для достижения службы при сопоставлении с URI. Значение по умолчанию, StrongWildcardкоторое игнорирует имя узла в совпадении. |
maxBufferPoolSize |
Целочисленное значение, указывающее максимальный объем памяти, выделенный для использования диспетчером буферов сообщений, получающих сообщения из канала. Значение по умолчанию — 524288 (0x80000) байтов. Диспетчер буферов сводит к минимуму затраты на использование буферов с помощью пула буферов. Буферы необходимы для обработки сообщений службой при выходе из канала. Если в буферном пуле недостаточно памяти для обработки нагрузки сообщения, диспетчер буферов должен выделить дополнительную память из кучи СРЕДЫ CLR, что увеличивает затраты на сборку мусора. Обширное выделение из кучи мусора среды CLR свидетельствует о том, что размер буферного пула слишком мал и что производительность можно улучшить с большим выделением, увеличив ограничение, указанное этим атрибутом. |
maxBufferSize |
Целочисленное значение, указывающее максимальный размер буфера, в байтах, в котором хранятся сообщения во время их обработки для конечной точки, настроенной с этой привязкой. Значение по умолчанию - 65 536 байт. |
maxReceivedMessageSize |
Положительное целое число, определяющее максимальный размер сообщения в байтах, включая заголовки, для сообщения, которое можно получить на канале, настроенном с этой привязкой. Отправитель получает ошибку SOAP, если сообщение слишком велико для получателя. Получатель удаляет сообщение и создает запись события в журнале трассировки. Значение по умолчанию — 65 536 байт. |
messageEncoding |
Определяет кодировщик, используемый для кодирования сообщения SOAP. Допустимые значения включают следующие значения: — Текст: используйте кодировщик текстовых сообщений. — Mtom: используйте кодировщик организации передачи сообщений 1.0 (MTOM). Значение по умолчанию - Text. Этот атрибут имеет тип WSMessageEncoding. |
name |
Строка, содержащая имя конфигурации привязки. Это значение должно быть уникальным среди привязок одного типа. Начиная с .NET Framework 4 привязки и поведение не требуются для имени. Дополнительные сведения о конфигурации по умолчанию и безымяных привязках и поведении см. в статье "Упрощенная конфигурация " и "Упрощенная конфигурация" для служб WCF. |
openTimeout |
TimeSpan Значение, указывающее интервал времени, предоставленного для завершения операции открытия. Это значение должно быть больше или равно Zero. Значение по умолчанию — 00:01:00. |
proxyAddress |
Универсальный код ресурса (URI), содержащий адрес прокси-сервера HTTP. Если useSystemWebProxy задано значение true, этот параметр должен быть null. Значение по умолчанию — null. |
receiveTimeout |
TimeSpan Значение, указывающее интервал времени, предоставленного для завершения операции получения. Это значение должно быть больше или равно Zero. Значение по умолчанию — 00:10:00. |
sendTimeout |
TimeSpan Значение, указывающее интервал времени, предоставленного для завершения операции отправки. Это значение должно быть больше или равно Zero. Значение по умолчанию — 00:01:00. |
textEncoding |
Задает кодировку набора символов, которая будет использоваться для создания сообщений в привязке. Допустимые значения включают следующие значения: — BigEndianUnicode: кодировка Unicode BigEndian. — Юникод: 16-разрядная кодировка. — UTF8: 8-разрядная кодировка Значение по умолчанию — UTF8. Этот атрибут имеет тип Encoding. |
transferMode |
Допустимое TransferMode значение, указывающее, буферичены ли сообщения или передаются в поток по запросу или ответу. |
useDefaultWebProxy |
Логическое значение, указывающее, следует ли использовать автоматически настроенный HTTP-прокси системы, если он доступен. Значение по умолчанию — true. |
Дочерние элементы
| Элемент | Description |
|---|---|
| <безопасность> | Определяет параметры безопасности для привязки. Этот элемент имеет тип BasicHttpSecurityElement. |
| <readerQuotas> | Определяет ограничения сложности сообщений SOAP, которые могут обрабатываться конечными точками, настроенными с помощью этой привязки. Этот элемент имеет тип XmlDictionaryReaderQuotasElement. |
Родительские элементы
| Элемент | Description |
|---|---|
| <Привязки> | Этот элемент содержит коллекцию стандартных и пользовательских привязок. |
Замечания
BasicHttpBinding использует HTTP в качестве транспорта для отправки сообщений SOAP 1.1. Служба может использовать эту привязку для предоставления конечных точек, соответствующих WS-I BP 1.1, например тех, которые используют клиенты ASMX. Аналогичным образом клиент может использовать BasicHttpBinding для взаимодействия со службами, предоставляющими конечные точки, которые соответствуют WS-I BP 1.1, например веб-службам ASMX или службам, настроенным с помощью BasicHttpBinding.
Безопасность отключена по умолчанию, но может быть добавлена настройка атрибута режима дочернего <элемента безопасности> в значение, отличное от Noneзначения. По умолчанию используется кодировка сообщений "Text" и кодировка текста UTF-8.
Пример 1
В следующем примере показано использование BasicHttpBinding , которое обеспечивает взаимодействие HTTP и максимальное взаимодействие с веб-службами первого и второго поколения. Привязка указывается в файлах конфигурации для клиента и службы. Тип привязки указывается с помощью binding атрибута <endpoint> элемента. Если вы хотите настроить базовую привязку и изменить некоторые его параметры, необходимо определить конфигурацию привязки. Конечная точка должна ссылаться на конфигурацию привязки по имени с помощью bindingConfiguration атрибута <endpoint> элемента, как показано в следующем коде конфигурации службы.
<system.serviceModel>
<services>
<service type="Microsoft.ServiceModel.Samples.CalculatorService"
behaviorConfiguration="CalculatorServiceBehavior">
<endpoint address=""
binding="basicHttpBinding"
bindingConfiguration="Binding1"
contract="Microsoft.ServiceModel.Samples.ICalculator" />
</service>
</services>
<bindings>
<basicHttpBinding>
<binding name="Binding1"
hostNameComparisonMode="StrongWildcard"
receiveTimeout="00:10:00"
sendTimeout="00:10:00"
openTimeout="00:10:00"
closeTimeout="00:10:00"
maxReceivedMessageSize="65536"
maxBufferSize="65536"
maxBufferPoolSize="524288"
transferMode="Buffered"
messageEncoding="Text"
textEncoding="utf-8"
bypassProxyOnLocal="false"
useDefaultWebProxy="true">
<security mode="None" />
</binding>
</basicHttpBinding>
</bindings>
</system.serviceModel>
Пример 2
Начиная с .NET Framework 4 привязки и поведение не требуются для имени. Функциональные возможности из предыдущего примера можно выполнить, удалив привязкуConfiguration из адреса конечной точки и имени из привязки.
<system.serviceModel>
<services>
<service type="Microsoft.ServiceModel.Samples.CalculatorService"
behaviorConfiguration="CalculatorServiceBehavior">
<endpoint address=""
binding="basicHttpBinding"
contract="Microsoft.ServiceModel.Samples.ICalculator" />
</service>
</services>
<bindings>
<basicHttpBinding>
<binding hostNameComparisonMode="StrongWildcard"
receiveTimeout="00:10:00"
sendTimeout="00:10:00"
openTimeout="00:10:00"
closeTimeout="00:10:00"
maxReceivedMessageSize="65536"
maxBufferSize="65536"
maxBufferPoolSize="524288"
transferMode="Buffered"
messageEncoding="Text"
textEncoding="utf-8"
bypassProxyOnLocal="false"
useDefaultWebProxy="true">
<security mode="None" />
</binding>
</basicHttpBinding>
</bindings>
</system.serviceModel>
Дополнительные сведения о конфигурации по умолчанию и безымяных привязках и поведении см. в статье "Упрощенная конфигурация " и "Упрощенная конфигурация" для служб WCF.