Пакет: matlab.net.http
Опции, управляющие обменом HTTP-сообщениями
Используйте HTTPOptions
Класс для создания опций для сообщений HTTP запроса. Используйте этот объект, чтобы задать опции, которые являются постоянными для нескольких запросов.
obj = matlab.net.http.HTTPOptions
создает опции HTTP со значениями свойств по умолчанию.
obj = matlab.net.http.HTTPOptions(Name,Value)
создает опции HTTP с дополнительными свойствами, заданными одним или несколькими аргументами пары "имя-значение". Name
- имя свойства и Value
- соответствующее значение. Можно задать несколько аргументы пары "имя-значение" в любом порядке как Name1,Value1,...,NameN,ValueN
. Неопределенным свойствам присваиваются значения по умолчанию.
Authenticate
- Используются ли учетные данные для проверки подлинностиtrue
(по умолчанию) | false
Используются ли учетные данные для проверки подлинности, заданные как true
или false
.
Если Authenticate
true, затем реализуйте поддерживаемый метод проверки подлинности, запрошенный сервером или прокси. Аутентификация основана на Credentials
свойство и имя пользователя прокси и пароль, установленные в MATLAB®
Веб- Настройки, если таковые имеются. Дополнительные сведения о поддержке аутентификации MATLAB см. в разделе «Аутентификация сервера».
Ответное сообщение содержит запрос проверки подлинности сервера или прокси-сервера при наличии любого из этих условий.
Authenticate
является ложным.
Нет подходящего Credentials
свойства найдены для этого запроса.
Не удалось выполнить проверку подлинности.
GetAccess | public |
SetAccess | public |
Типы данных: logical
CertificateFilename
- Имя файла'default'
(по умолчанию) | строку | вектор символовИмя файла, заданное как строковый скаляр или вектор символов, обозначающий имя и местоположение файла, содержащего корневые сертификаты. Файл должен быть в формате PEM. Расположение должно быть в текущей папке, в папке на пути MATLAB или полным или относительным путем к файлу. Сертификаты, содержащиеся в этом файле, используются для проверки сертификатов сервера для HTTPS-подключений. Поскольку безопасность HTTPS-соединений зависит от целостности этого файла, защитите его соответствующим образом. MATLAB не управляет сертификатами или файлами сертификатов, но для управления PEM-файлами доступны сторонние программы.
По умолчанию, когда опции не заданы, MATLAB проверяет сертификаты сервера с помощью системного хранилища сертификатов. Это также поведение, если CertificateFilename
установлено в 'default'
.
Если CertificateFilename
пуст (''
), затем валидация сертификата сервера отключается. MATLAB только проверяет, что область имя сертификата сервера совпадает с именем сервера.
Если вы столкнулись с отказом валидации сертификата сервера с помощью 'default'
, затем проверьте подключение с помощью системного браузера.
Если вы столкнулись с проблемой подключения, примите во внимание следующее:
Для получения просроченного или отозванного сертификата сервера обратитесь к владельцу веб-сайта или администратору сервера.
Для отсутствующего сертификата корневого ЦС можно выбрать один из следующих:
Добавьте корневой сертификат CA к файлу, обозначенному CertificateFilename
.
Отключить валидацию сертификата путем установки CertificateFilename
в пустые (''
).
Для несоответствия доменного имени сертификата сервера и доменного имени сервера можно отключить эту валидацию путем создания matlab.net.http.RequestMessage
объект и установка matlab.net.http.HTTPOptions.VerifyServerName
свойство к false
.
Примечание
Эти опции являются временными обходами, и MathWorks настоятельно рекомендует устранить первопричину любого отказа валидации сертификата сервера с помощью действительного/правильного сертификата сервера.
GetAccess | public |
SetAccess | public |
Типы данных: char
| string
ConnectTimeout
- Секунд на ожидание начального подключения к серверуInf
Секунд на ожидание начального подключения к серверу в виде целого числа. Если используется прокси, то тайм-аут применяется к подключению к прокси; в противном случае это относится к соединению с сервером.
Значение по умолчанию является 10 секундами. Если период тайм-аута превышен, то ConnectTimeout
выдает ошибку. Чтобы отключить тайм-ауты, установите ConnectTimeout
на Inf
.
ConnectTimeout
определяет, сколько времени ждать до завершения попытки подключения с сервером или прокси перед выдачей ошибки. Это время ожидания не ограничивает, сколько времени требуется для получения полного ответа.
При отправке запроса на сервер через прокси рассмотрите использование ResponseTimeout, чтобы ограничить время ожидания.
Некоторые операционные системы имеют максимальное время ожидания, установленное системой. Это тайм-аут вступает в эффект, даже если значение ConnectTimeout
больше максимального. Для примера, в Windows® 10, этот тайм-аут составляет 21 секунду.
GetAccess | public |
SetAccess | public |
ConvertResponse
- Как обработать необработанную полезную нагрузку с сервераtrue
(по умолчанию) | false
Как обработать необработанную полезную нагрузку, полученную от сервера в ResponseMessage
, заданный как true
или false
.
Если ConvertResponse
это правда, тогда
Если a ContentConsumer
задается, затем uint8
полезная нагрузка передается в ContentConsumer
для дальнейшей обработки.
В противном случае MATLAB преобразует полезную нагрузку в MessageBody.Payload
свойство для данных MATLAB на основе Content-Type в ответном сообщении. Правила преобразования см. в свойстве данных. Если преобразование успешно, то Data
содержит преобразованные данные и Payload
пуст.
Если ConvertResponse
имеет значение false, затем любое заданное ContentConsumer
игнорируется, и поведение зависит от того, задает ли Content-Type символьные данные.
Если Content-Type имеет явный атрибут или атрибут charset по умолчанию, то полезная нагрузка преобразуется в текст и хранится в Data
без дальнейшей обработки.
Если Content-Type не задает символьные данные или нет набора графиков, и MATLAB не поддерживает Content-Type, то Data
содержит необработанные uint8
полезная нагрузка.
Во всех случаях, Payload
свойство удаляется, если вы также не задаете SavePayload
свойство к true
.
ConvertResponse
игнорируется, если сообщение было закодировано (сжато), и одно из следующего:
Не удалось выполнить декодирование
DecodeResponse
свойство false
GetAccess | public |
SetAccess | public |
Типы данных: logical
DataTimeout
- Секунд на ожидание между пакетами данныхInf
(по умолчанию) | целое числоСекунд на ожидание между пакетами данных в сети в виде целого числа. Значение по умолчанию Inf
, что означает отсутствие тайм-аута. Это тайм-аут, применяемый после установления начального соединения, полезен для связи с потенциально медленными серверами. Если время ожидания отправки или получения следующего ожидаемого пакета превышено, MATLAB закрывает соединение и выдает ошибку. В этом случае используйте matlab.net.http.HTTPException
History
свойство для получения любых частичных данных.
GetAccess | public |
SetAccess | public |
DecodeResponse
- Декодировать ли сжатые данныеtrue
(по умолчанию) | false
Декодировать ли сжатые данные, задается как true
или false
. Средство декодирования для декодирования (декодирования) полезной нагрузки отклика, когда сервер возвращает сжатые (закодированные) данные. Декодирование происходит перед преобразованием на основе поля Content-Type.
Ответ кодируется, когда существует поле Content-Encoding, которое задает алгоритм сжатия. MATLAB поддерживает значения кодирования содержимого gzip
, x-gzip
, и deflate
. Значение identity
означает, что кодирование отсутствует, что эквивалентно сообщению, не имеющему поля Content-Encoding. Если MATLAB не поддерживает тип Content-Encoding, декодирование не происходит, даже если DecodeResponse
является true.
Если DecodeResponse
false, и полезная нагрузка кодируется, затем:
The MessageBody.Payload
свойство содержит необработанную некодированную полезную нагрузку.
The MessageBody.Data
свойство остается пустым.
Преобразование не происходит, независимо от настройки ConvertResponse
свойство.
Не устанавливайте это значение false для сжатых ответов, если вы используете ContentConsumer
который не может обработать сжатые данные, если вы также не задаете ConvertResponse
ложь для подавления использования потребителя. FileConsumer
и BinaryConsumer
являются единственными потребителями, предоставляемыми MATLAB, которые могут обрабатывать сжатые данные.
GetAccess | public |
SetAccess | public |
Типы данных: logical
Credentials
- Учетные данные аутентификацииmatlab.net.http.Credentials
(по умолчанию) | вектор matlab.net.http.Credentials
объекты | пустымиУчетные данные проверки подлинности, заданные как один или несколько matlab.net.http.Credentials
объекты. Значение по умолчанию является значением по умолчанию matlab.net.http.Credentials
объект. Используйте Credentials
по умолчанию объект, разрешающий проверку подлинности для таких схем, как Kerberos и NTLM в Windows. Эти схемы не требуют указания имени пользователя или пароля.
Credentials
используются только в том случае, если Authenticate
свойство имеет значение true. Необходимо задать хотя бы один Credentials
объект для проверки подлинности. Если вы задаете Credentials
чтобы пусто, то аутентификация не происходит.
Когда вы обращаетесь к одному и тому же серверу несколько раз во время сеанса, для максимальной эффективности задайте то же Credentials
вектор или то же HTTPOptions
объект для каждого запроса. Credentials
содержит кэшированную информацию, которая ускоряет последующие проверки подлинности.
Если вы предоставляете Credentials
для использования с прокси, и вы хотите, чтобы они Credentials
чтобы переопределить другое имя пользователя и пароль, указанные в Web Preferences в окне Preferences, затем укажите хост и порт прокси в ProxyURI
свойство этого HTTPOptions
объект или очистить опцию Use a proxy with authentication в окне Preferences.
GetAccess | public |
SetAccess | public |
KeepAliveTimeout
- Секунды, чтобы сохранить соединение с сервером открытымInf
(по умолчанию) | 0
Секунды, чтобы сохранить соединение с сервером открытым после начального соединения, заданные как 0
или Inf
. Используйте это свойство, чтобы разрешить отправку нескольких последовательных сообщений по одному и тому же соединению. Система координат Inf
значение (по умолчанию) включает постоянные соединения, сохраняя соединение открытым до тех пор, пока сервер способен. Значение 0
закрывает соединение после каждого сообщения. Другие значения не поддерживаются.
The KeepAliveTimeout
свойство не влияет на успех операции. MATLAB всегда сохраняет соединение открытым достаточно долго, чтобы получить ожидаемый ответ от сервера, если другие тайм-ауты не превышены. Однако a 0
значение может серьезно повлиять на эффективность отправки многих коротких сообщений на тот же сервер.
GetAccess | public |
SetAccess | public |
MaxRedirects
- Количество разрешенных перенаправленийInf
Количество разрешенных перенаправлений, заданное в виде целого числа для данного запроса. Количество перенаправлений по умолчанию составляет 20. Установите значение 0, чтобы отключить перенаправление. Установите значение Inf
разрешить неограниченные перенаправления.
Если MaxRedirects
является ненулевым, затем файлы cookie, полученные от сервера в каждом ответе перенаправления, копируются в перенаправленное сообщение. После MaxRedirects
ответное сообщение содержит следующее сообщение перенаправления.
GetAccess | public |
SetAccess | public |
ProgressMonitorFcn
- Обработчик монитора прогрессаПрогресс обработчика монитора, заданный как указатель на функцию для matlab.net.http.ProgressMonitor
объект. Если UseProgressMonitor
true, затем MATLAB вызывает ProgressMonitor
функция для сообщения о прогрессе передачи. Если UseProgressMonitor
является ложным или ProgressMonitorFcn
пуст, о прогрессе не сообщается.
GetAccess | public |
SetAccess | public |
Типы данных: function_handle
ProxyURI
- Адрес прокси-сервераmatlab.net.URI
| строкаАдрес прокси-сервера, заданный как matlab.net.URI
объект или строка формы host:port
или //host:port
.
ProxyURI
используется только в том случае, если UseProxy
свойство имеет значение true. ProxyURI
переопределяет прокси, заданную в веб-настройках MATLAB и любых прокси, заданных в системных настройках Windows.
GetAccess | public |
SetAccess | public |
ResponseTimeout
- Секунды, которые нужно подождать, чтобы получить начальный ответInf
(по умолчанию) | целое числоСекунд, чтобы дождаться получения начального ответа (заголовка) от сервера после отправки последнего пакета запроса в виде целого числа. Значение по умолчанию Inf
, что означает отсутствие тайм-аута. Если этот тайм-аут превышен, MATLAB закрывает соединение и выдает ошибку.
Использование ResponseTimeout
ограничить время ожидания при отправке запроса на сервер через прокси, так как ConnectTimeout
применяется только к времени прокси-соединения.
ResponseTimeout
эквивалентно Timeout
набор свойств как weboptions
.
GetAccess | public |
SetAccess | public |
SavePayload
- Сохранена ли полезная нагрузкаfalse
(по умолчанию) | true
Сохранена ли Полезная нагрузка, задается как true
или false
. Полезная нагрузка - это необработанные байты, полученные от или отправленные на сервер, сохраненные в MessageBody.Payload
свойство.
В сообщении запроса установите SavePayload
на true
сохраняет полезную нагрузку после преобразования данных. В ответном сообщении байты сохраняются перед преобразованием.
Использование SavePayload
как инструмент отладки. Например, сервер не может обработать тело запроса или произошел отказ преобразования тела ответа в тип MATLAB. Настройка SavePayload
на true
может потреблять значительный объем памяти, поскольку полезная нагрузка, по крайней мере, равна размеру преобразованных данных.
Чтобы извлечь полезную нагрузку ответа без преобразования, установите ConvertResponse
свойство к false
и читать MessageBody.Data
вместо этого.
Если задан HTTPException
происходит во время обработки сообщения, затем полезная нагрузка, полученная до точки отказа, находится в HTTPException.History(end).Response.Body.Payload
.
Если RequestMessage.Body
является ContentProvider
объект, затем MATLAB сохраняет преобразованные данные провайдера в Body.Payload
.
GetAccess | public |
SetAccess | public |
Типы данных: logical
UseProgressMonitor
- Отображать ли прогрессfalse
(по умолчанию) | true
Отображать ли прогресс, задается как true
или false
. Задайте UseProgressMonitor
на true
для сообщения о прогрессе передачи с помощью функции, заданной ProgressMonitorFcn
свойство.
GetAccess | public |
SetAccess | public |
Типы данных: logical
UseProxy
- Использовать ли проксиtrue
(по умолчанию) | false
Использование ли прокси, задается как true
или false
.
Если UseProxy
true, MATLAB выбирает первый из этих прокси.
Значение в ProxyURI
свойство, если таковое имеется.
Значение прокси, заданное в веб- Настройки MATLAB, если оно имеется.
Прокси, заданный в настройках системы (только для Windows).
Все запросы переходят непосредственно к URI назначения без прокси, если любое из следующих значений соответствует true.
UseProxy
является ложным.
UseProxy
верно, но ProxyURI
пуст, и в настройках нет прокси.
MATLAB автоматически перенаправляет сообщение на прокси при UseProxy
является true.
GetAccess | public |
SetAccess | public |
Типы данных: logical
VerifyServerName
- Соответствует ли имя сервера сертификатуtrue
(по умолчанию) | false
Соответствует ли имя сервера сертификату, задается как true
или false
.
В безопасном соединении с помощью https
MATLAB проверяет, что имя сервера в сертификате соответствует Host
свойство в URI запроса или в URI последнего запроса на перенаправление. Эта верификация гарантирует, что вы взаимодействуете с предполагаемым сервером. Чтобы отключить верификацию в случаях, когда сертификат сервера не соответствует URI, используемому для доступа к нему, установите значение свойства false. Например, вы хотите получить доступ к серверу с помощью IP-адреса или «localhost», и вы уверены, что общаетесь непосредственно с предполагаемым сервером.
GetAccess | public |
SetAccess | public |
Типы данных: logical
Увеличьте время подключения до 20 секунд.
Измените опцию тайм-аута по умолчанию для сообщения запроса, заданного в переменной request
отправляется на сервер, указанный в переменной url
.
options = matlab.net.http.HTTPOptions('ConnectTimeout',20);
response = request.send(url,options);
ContentConsumer
| ContentProvider
| Credentials
| MessageBody
| ProgressMonitor
| send
| URI
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.