Синтаксический разбор ответов по типу контента

Ответ от сервера клиенту отправляется в многочастном формате. Класс форматирования ответа сервера:

class MyMultipartFromatter : BufferedMediaTypeFormatter
{
    ...
    public override void WriteToStream(Type type, object value, Stream writeStream, HttpContent content)
    {
       ...
       var multipartFormData = new MultipartFormDataContent("----abc123");
       content.Headers.TryAddWithoutValidation("Content-Type", "boundary=----abc123");
       ... // Adding data
       multipartFormData.ReadAsStreamAsync().Result.CopyTo(writeStream);
    }
}

Разбор ответа на стороне клиента:

var response = httpClient.PostAsync(requestUri, content).Result;
var multipart = response.Content.ReadAsMultipartAsync().Result;

ReadAsMultipartAsync выдает это исключение:

{"Invalid 'HttpContent' instance provided. It does not have a content-type header value. 'HttpContent' instances must have a content-type header starting with 'multipart/'.\r\nParameter name: content"}

Я предполагаю, что проблема в том, что response.Content не имеет заголовка ответа, в котором указан тип содержимого и установлена ​​граница. Как правильно отформатировать / разобрать составной ответ?

0 ответов

Другие вопросы по тегам