getFields

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

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

Описание

пример

[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, 20 Dec 2019 21:35:23 GMT"

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

Введенный в R2017b