getFields

Класс: matlab.net.http. Сообщение
Пакет: matlab.net.http

Возвратите поля заголовка сообщения, совпадающие с именем или классом

Синтаксис

[fields,indices] = getFields(messages,ids)

Описание

пример

[fields,indices] = getFields(messages,ids) возвращает поля и их индексы в сообщениях, которые совпадают с данными идентификаторами.

Входные параметры

развернуть все

Сообщения, заданные как вектор matlab.net.http.Message objects.

Пример: getFields ([msg1, msg2], 'Дата')

Имена к соответствию, заданному как одно из следующих.

  • Вектор строки, вектор символа, массив ячеек из символьных векторов или список, разделенный запятыми строк или векторов символов, содержащих имена полей, чтобы возвратиться. Имена не являются чувствительными к регистру.

  • Векторный или список, разделенный запятыми одного или нескольких объектов matlab.net.http.HeaderField, свойства Name которых используются, чтобы определить который поля возвратиться. Имена не являются чувствительными к регистру. Значения полей заголовка в этих объектах проигнорированы.

  • Векторный или список, разделенный запятыми объектов meta.class, которые являются подклассами HeaderField.

    Метод getFields ищет имена, которые совпадают с именами, поддержанными заданными классами, независимо от класса. Если подкласс не имеет определенного набора поддерживаемых имен, все поля заголовка того подкласса являются соответствующими независимо от их имен. Вызовите метод HeaderField.displaySubclasses, чтобы видеть поддерживаемые имена.

Пример: getFields (ответ, 'Дата', 'Тип контента')

Выходные аргументы

развернуть все

Поля, совпадающие с входным параметром, возвращенным как массив matlab.net.http.HeaderField objects., Если никакие соответствия не существуют, getFields, возвращают пустой массив HeaderField. Поиск имени является нечувствительным к регистру.

Индексируйте значения полей, возвращенных как массив целых чисел или [] если никакое соответствие.

Если messages является вектором, то getFields возвращает поля, совпадающие с ids из всех сообщений. indices является массивом ячеек векторов, где indices{i} содержит индексы соответствующих полей в messages{i}.

Примеры

развернуть все

Добавьте недостающее поле заголовка Даты к сообщению запроса с помощью метода RequestMessage.complete.

Создайте сообщение запроса, чтобы получить текст от веб-сайта MathWorks.

uri = matlab.net.URI('https://www.mathworks.com');
req = matlab.net.http.RequestMessage;

Проверьте, что сообщение содержит Поле даты. Значение даты отражает вашу информацию о системе. indices{1} = [] значения указывает, что req не содержит Поле даты.

request = complete(req,uri);
[fields,indices] = getFields([req,request],?matlab.net.http.field.HTTPDateField)
fields = 
  DateField with properties:

     Name: "Date"
    Value: "Tue, 21 Aug 2018 22:22:10 GMT"

indices = 1x2 cell array
    {0x0 double}    {[3]}

Введенный в R2017b

Была ли эта тема полезной?