Класс: matlab.net.http.ResponseMessage
Пакет: matlab.net.http
Обработайте или повторно обработайте полезную нагрузку Content-Type
возвращает копию сообщения с msg
= complete(msg
,consumer
)msg.Body.Payload
обрабатывается matlab.net.http.io.ContentConsumer
. Потребитель может хранить свой результат в msg.Body.Data
или обработать его каким-либо другим способом.
Используйте complete
метод, когда:
Body.Data
был отменен или установлен неправильно, поскольку сервер вставил в сообщение неправильный тип содержимого, либо тип содержимого отсутствует.
Вы устанавливаете ConvertResponse
HTTPOptions.ConvertResponse
свойство к false
чтобы предотвратить преобразование данных, когда они были получены первоначально.
Вы указали неправильное consumer
при отправке сообщения.
Если было исключение при обработке полученного сообщения или если вы установили HTTPOptions.SavePayload
свойство, когда вы отправили запрос, Body.Payload
в этом ответном сообщении содержится исходная полезная нагрузка (если она имеется). В этом случае измените заголовок этого сообщения, чтобы добавить или исправить поле Content-Type. Затем вызовите complete
метод обработки ответа, как если бы сервер вставил это поле Content-Type первоначально. Результатом является новое содержимое в Body.Data
и/или Data
обрабатывается заданным consumer
.
Если Body.Payload
задан, затем этот метод игнорирует текущее значение Body.Data
и повторно обрабатывает полезную нагрузку на основе Content-Type. Этот случай возникает при ошибке преобразования или если вы указали SavePayload
. Но если преобразование входящих данных произошло первоначально, но было неправильным, Body.Data
задан и Body.Payload
может быть пустым. В этом случае измените значение ContentTypeField в полученном сообщении на требуемый тип и вызовите этот метод. complete
пытается преобразовать данные назад в полезную нагрузку на основе Body.ContentType
свойство, используемое для преобразования первоначально. Затем он переопределяется с помощью нового заголовка Content-Type в ответном сообщении. Если Data
не пуст, затем возвращается Body.Payload
задан.
Если вы указали SavePayload
при отправке сообщения complete
использует исходную полезную нагрузку, которая сохранялась в Body.Payload
вместо этого без потери информации.
Если на ResponseMessage.Completed
свойство установлено, complete
ничего не делает. В сообщении, содержащем Body
это свойство обычно устанавливается только в том случае, если msg
. Body.Payload
был установлен.
Законченный | ConvertResponse | matlab.net.http.io.ContentConsumer
| SavePayload