Максимальный размер буфера был превышен при чтении данных MTOM
Мне нужно использовать внешний веб-сервис, но я получаю следующую ошибку:
Максимальный размер буфера (65536) был превышен при чтении данных MTOM
До сегодняшнего дня я использовал тот же сервис, используя следующую конфигурацию:
<bindings>
<basicHttpBinding>
<binding name="BOServiceSoap11Binding">
<security mode="Transport" />
</binding>
<binding name="BOServiceSoap11Binding1" />
</basicHttpBinding>
<customBinding>
<binding name="BOServiceSoap12Binding">
<mtomMessageEncoding messageVersion="Soap12" />
<httpsTransport />
</binding>
</customBinding>
</bindings>
Вот мой конечный результат:
<endpoint address="https://x.com/live-api/services/BOService.BOServiceHttpsSoap12Endpoint/"
binding="customBinding" bindingConfiguration="BOServiceSoap12Binding"
contract="xServiceReference.BOServicePortType" name="BOServiceHttpsSoap12Endpoint" />
Я попытался увеличить MaxReceivedMessageSize, добавив следующие теги к тегу customBinding и его дочерним элементам:
MaxReceivedMessageSize="2147483647" maxArrayLength="2147483647" maxStringContentLength="2147483647" maxBufferSize="2147483647"
Как мне настроить свою конечную точку, чтобы получить правильный ответ?
Спасибо,
1 ответ
Решение
Я изменил свою конфигурацию, как показано ниже:
<customBinding>
<binding name="BOServiceSoap12Binding">
<mtomMessageEncoding messageVersion="Soap12" maxBufferSize="2147483647"/>
<httpsTransport maxReceivedMessageSize="2147483647"/>
</binding>
</customBinding>
Теперь все работает как положено.