powered by simpleCommunicator - 2.0.41     © 2025 Programmizd 02
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / pollingDuplexHttpBinding TransportWithMessageCredential Клиент не получает ответов сервиса
2 сообщений из 2, страница 1 из 1
pollingDuplexHttpBinding TransportWithMessageCredential Клиент не получает ответов сервиса
    #37630178
Alex_BBB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день.
Мы используем pollingDuplexHttpBinding в security mode TransportWithMessageCredential .
SilverLight 4 клиент может посылать запросы сервису и он(сервис) их получает, но клиент не получает ответов сервера.

Если поменять security mode с TransportWithMessageCredential на Transport , то все работает хорошо.

Ниже показана рабочая конфигурация (security mode Transport). Комментариями показана конфигурация которая приводит к тому что сервер получает запросы от клиента, но клиент не получает ответы.

Сервис
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
<behaviors>
  <serviceBehaviors>
    <behavior name="">
      <serviceMetadata httpGetEnabled="true" />
      <serviceDebug includeExceptionDetailInFaults="true" />
      <!--
      <serviceCredentials>
        <userNameAuthentication userNamePasswordValidationMode="Custom" 
                                customUserNamePasswordValidatorType="myType" />
      </serviceCredentials>
      -->
    </behavior>
  </serviceBehaviors>
</behaviors>

<bindings>
  <pollingDuplexHttpBinding>
    <binding name="multipleMessagesPerPollPollingDuplexHttpBinding"
              duplexMode="SingleMessagePerPoll">
      <!--
      <security mode="TransportWithMessageCredential" />
      -->
      <security mode="Transport" />
    </binding>
  </pollingDuplexHttpBinding>
</bindings>

<services>
  <service name="Gam.Service.GamSrv">
    <endpoint
        address=""
        binding="pollingDuplexHttpBinding"
        bindingConfiguration="multipleMessagesPerPollPollingDuplexHttpBinding"
        contract="Gam.Service.Abstract.IUserSrv" />
    <endpoint
        address="mex"
        binding="mexHttpBinding"
        contract="IMetadataExchange" />
  </service>
</services>



SilverLight 4 Клиент
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
<bindings>
  <customBinding>
    <binding name="pd">
      <!--
      <security authenticationMode="UserNameOverTransport" />
      -->
      <pollingDuplex duplexMode="SingleMessagePerPoll" />
      <binaryMessageEncoding />
      <httpsTransport transferMode="Buffered" />
    </binding>
  </customBinding>
</bindings>
<client>
  <endpoint address="/GamSrv.svc"
    binding="customBinding"
    bindingConfiguration="pd"
    contract="GamSrvReference.IUserSrv"
    name="MyDuplexContract" />
</client>
...
Рейтинг: 0 / 0
pollingDuplexHttpBinding TransportWithMessageCredential Клиент не получает ответов сервиса
    #37630312
Alex_BBB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нашлось решение. В конфигурации клиента нужно добавить includeTimestamp="false"

Код: xml
1.
<security authenticationMode="UserNameOverTransport" includeTimestamp="false" />
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / pollingDuplexHttpBinding TransportWithMessageCredential Клиент не получает ответов сервиса
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]