getFields

Класс: matlab.net.http.
Пакет: matlab.net.http

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

Синтаксис

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

Описание

пример

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

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

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

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

Пример: getFields([msg1,msg2],'Date')

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

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

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

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

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

Пример: getFields(response,'Date','Content-Type')

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

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

Поля, совпадающие с входом, возвращенным как массив объектов matlab.net.http.HeaderField. Если никакие соответствия не существуют, 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: "Fri, 22 Feb 2019 01:26:09 GMT"

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

Введенный в R2017b