Ошибка публикации данных клиента службы REST WCF с длиной более 8200 символов - PullRequest
0 голосов
/ 04 ноября 2011

Я пользуюсь службой WCF REST и не могу опубликовать больше значений с длиной более 8200 символов.

Я получаю неверный ответ 400

var client = new HttpClient();
            var response = new HttpResponseMessage();
response = client.Post(uri.ToString(),HttpContentExtensions.CreateJsonDataContract(value));

Я также добавил следующее в Интернете.config.

 <standardEndpoints>
      <webHttpEndpoint>
        <standardEndpoint name="" helpEnabled="true" automaticFormatSelectionEnabled="true" maxReceivedMessageSize="2000000" maxBufferSize="2000000" />
      </webHttpEndpoint>
    </standardEndpoints>
  </system.serviceModel>

1 Ответ

0 голосов
/ 04 ноября 2011

Вам нравится вводить квоту maxStringContentLength (по умолчанию = 8192). Если это так, вы должны увеличить квоту в стандартной конечной точке, как показано ниже. Но чтобы узнать наверняка, попробуйте включить трассировку на сервере, у трассировок будет исключение, указывающее, почему именно сервер отклонил запрос.

<system.serviceModel>
  <standardEndpoints>
    <webHttpEndpoint>
      <standardEndpoint name=""
                        helpEnabled="true"
                        automaticFormatSelectionEnabled="true"
                        maxBufferSize="2000000"
                        maxReceivedMessageSize="2000000">
        <readerQuotas maxStringContentLength="2000000"/>
      </standardEndpoint>
    </webHttpEndpoint>
  </standardEndpoints>
</system.serviceModel>
...