Класс: matlab.net.http.io.MultipartConsumer
Пакет: matlab.net.http.io
Обработка следующего буфера данных для MultipartConsumer
[length,stop] = putData(consumer,data)
[ накапливает буферы length,stop] = putData(consumer,data)data до тех пор, пока не будет собрана вся часть многопутевого сообщения. Затем он использует поле Content-Type в заголовке детали для поиска подходящего ContentConsumer делегат, который может обрабатывать этот тип, задает делегат Header свойство к заголовку детали, а затем вызывает initialize и start в этом делегате. Отсюда следует, что с одним или несколькими putData вызовы, передача полезной нагрузки компонента, а затем вызовы putData(uint8.empty) для указания конца полезной нагрузки.
После последнего звонка делегату putData, этот метод создает ResponseMessage содержащий заголовок позиции и Body скопировано из Response.Body в делегате. (Что Body может содержать или не содержать данные, в зависимости от того, что делает делегат.) Он добавляет, что новый ResponseMessage в массив ResponseMessage объекты в этом потребителе Response.Body.Data свойство, которое при достижении конца сообщения содержит одно ResponseMessage для каждой части.
Этот метод является переопределенным методом putData. Если переопределить этот метод и вернуть stop=true до окончания сообщения (если data не пуст), чтобы прекратить прием сообщения до обычного конца сообщения, следует избегать вызова этого метода суперкласса для последующего putData(uint8.empty) вызов, который MATLAB ® обычно выполняет после установкиstop. Невыполнение этого условия приводит к недопустимому исключению сообщения из MultipartConsumer из-за преждевременного окончания сообщения.
Access | public |
matlab.net.http.field.ContentTypeField | matlab.net.http.MessageBody | matlab.net.http.ResponseMessage | putData