getFields

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

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

Описание

пример

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

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

расширить все

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

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

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

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

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

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

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

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

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

расширить все

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

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

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

Примеры

расширить все

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

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

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

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

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

     Name: "Date"
    Value: "Tue, 23 Mar 2021 21:10:08 GMT"

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

Введенный в R2016b