Spec-Zone.ru › Octave 9

36.4.2 Доступ к WWW

Octave может взаимодействовать с веб-сайтами в Интернете. Функция web запускает внешний веб-браузер для интерактивного просмотра сайта. Остальные функции — urlread, urlwrite, webread, webwrite — это внутренние функции Octave, которые могут импортировать данные с веб-сайта, указанного URL-адресом (унифицированным указателем ресурса), в Octave или экспортировать данные из Octave на такой сайт.

: status = web ()
: status = web (url)
: status = web (url, option)
: status = web (url, option_1, …, option_N)
: [status, h, url] = web (…)

Открывает url в системном веб-браузере по умолчанию.

Если аргументы не указаны, открывается адрес https://www.octave.org.

Для совместимости с MATLAB можно передать дополнительные параметры, но они игнорируются.

  • ‘-browser’ Открыть url в системном браузере по умолчанию.
  • ‘-new’ Не влияет на системный браузер.
  • ‘-noaddressbox’ Не влияет на системный браузер.
  • ‘-notoolbar’ Не влияет на системный браузер.

Возвращаемое значение status может принимать одно из следующих значений:

  • ‘0’ Системный браузер найден и успешно открыт.
  • ‘1’ Не удалось найти системный браузер.
  • ‘2’ Системный браузер найден, но произошла ошибка.

Возвращаемые значения handle и url пока не реализованы, но предоставляются для совместимости.

См. также: weboptions, webread, webwrite, urlread, urlwrite.

: s = urlread (url)
: [s, success] = urlread (url)
: [s, success, message] = urlread (url)
: […] = urlread (url, method, param)

Загружает удалённый файл, указанный в url, и возвращает его содержимое в виде строки s.

Например:

s = urlread ("http://ftp.octave.org/pub/README");

Переменная success равна 1, если загрузка выполнена успешно, иначе она равна 0, а message содержит сообщение об ошибке.

Если выходной аргумент не указан и возникает ошибка, она сообщается с помощью механизма обработки ошибок Octave.

Эта функция использует libcurl. Библиотека curl поддерживает, среди прочего, протоколы HTTP, FTP и FILE. Имя пользователя и пароль можно указать в URL-адресе. Например:

s = urlread ("http://user:password@example.com/file.txt");

Запросы GET и POST можно указать с помощью method и param. Параметр method принимает значение ‘get’ или ‘post’, а param представляет собой массив ячеек с парами параметров и значений. Например:

s = urlread ("http://www.google.com/search",
             "get", {"query", "octave"});

См. также: urlwrite.

: urlwrite (url, localfile)
: f = urlwrite (url, localfile)
: [f, success] = urlwrite (url, localfile)
: [f, success, message] = urlwrite (url, localfile)

Загружает удалённый файл, указанный в url, и сохраняет его под именем localfile.

Например:

urlwrite ("http://ftp.octave.org/pub/README",
          "README.txt");

Полный путь к загруженному файлу возвращается в f.

Переменная success равна 1, если загрузка выполнена успешно, иначе она равна 0, а message содержит сообщение об ошибке.

Если выходной аргумент не указан и возникает ошибка, она сообщается с помощью механизма обработки ошибок Octave.

Эта функция использует libcurl. Библиотека curl поддерживает, среди прочего, протоколы HTTP, FTP и FILE. Имя пользователя и пароль можно указать в URL-адресе, например:

urlwrite ("http://username:password@example.com/file.txt",
          "file.txt");

Запросы GET и POST можно указать с помощью method и param. Параметр method принимает значение ‘get’ или ‘post’, а param представляет собой массив ячеек с парами параметров и значений. Например:

urlwrite ("http://www.google.com/search", "search.html",
          "get", {"query", "octave"});

См. также: urlread.

: response = webread (url)
: response = webread (url, name1, value1, …)
: response = webread (…, options)

Читает содержимое RESTful веб-службы.

Читает содержимое веб-службы, указанной в url, и возвращает его в response.

Все указанные пары «ключ — значение» (name1, value1, …) добавляются к url как параметры запроса. Чтобы поместить запрос в тело сообщения, используйте webwrite. Допустимые параметры запроса определяются веб-службой.

options — это объект weboptions, который можно использовать для добавления других параметров HTTP-запроса. Этот аргумент можно использовать в любой из форм вызова. Полный список поддерживаемых параметров HTTP см. в help weboptions.

См. также: weboptions, webwrite.

: response = webwrite (url, name1, value1, …)
: response = webwrite (url, data)
: response = webwrite (…, options)

Записывает данные в RESTful веб-службы.

Записывает содержимое в веб-службу, указанную в url, и возвращает ответ в response.

Все указанные пары «ключ — значение» (name1, value1, …) добавляются в тело запроса в виде пар параметров запроса (get, post, put и т. д.).

options — это объект weboptions, который можно использовать для добавления других параметров HTTP-запроса. Этот аргумент можно использовать в любой из форм вызова. Полный список поддерживаемых параметров HTTP см. в help weboptions.

См. также: weboptions, webread.

: output = weboptions ()
: output = weboptions (name1, value1, …)

Задаёт параметры для RESTful веб-служб.

weboptions без входных аргументов возвращает объект weboptions с настройками по умолчанию для задания параметров запроса к веб-службе. Объект weboptions может быть необязательным входным аргументом функций webread и webwrite.

Можно указать несколько пар «имя — значение» в любом порядке: name1, value1, name2, value2 и т. д.

Имена параметров должны точно совпадать с одним из указанных в таблице ниже.

Доступны следующие параметры:

  • ‘CharacterEncoding’ — задаёт кодировку символов данных:

    ‘auto’ (по умолчанию), ‘UTF-8’, ‘US-ASCII’. Значение ‘auto’ выбирает кодировку на основе типа содержимого данных.

  • ‘UserAgent’ — задаёт User Agent для соединения.

    Значение по умолчанию — ‘GNU Octave/version’, где ‘version’ — текущая версия Octave, возвращаемая version.

  • ‘Timeout’ — задаёт время ожидания соединения в секундах.

    По умолчанию — 10 секунд. Значение ‘Inf’ пока не поддерживается.

  • ‘Username’ — идентификатор пользователя для базового HTTP-соединения.

    По умолчанию — NULL. Значение должно быть строкой.

  • ‘Password’ — пароль для аутентификации пользователя в HTTP-соединении.

    По умолчанию — NULL. Значение должно быть строкой или вектором символов. Примечание по программированию: если вывести объект weboption со свойством Password, которому присвоено значение, оно отображается в виде строки, содержащей '*'. Однако объект хранит значение свойства Password в виде обычного текста.

  • ‘KeyName’ — задаёт имя дополнительного ключа, добавляемого в заголовок HTTP-запроса. Его следует использовать вместе с ‘KeyValue’. Значение должно быть строкой или вектором символов.
  • ‘KeyValue’ — задаёт значение ключа ‘KeyName’.

    Для присвоения значения этому полю необходимо задать ‘KeyName’.

  • ‘HeaderFields’ — задаёт поля заголовка для соединения.

    Имена и значения полей заголовка, задаваемые в виде массива строк размером m на 2 или массива ячеек с векторами символов, добавляются в заголовок HTTP-запроса. HeaderFields{i,1} — имя поля, а HeaderFields{i,2} — его значение.

    weboptions ("HeaderFields", {"Content-Length" "78";"Content-Type" "application/json"})
    Creates a weboptions object that contains two header fields:
    Content-Length with value 78 and Content-Type with value application/json.
  • ‘ContentType’ — задаёт тип содержимого данных.

    Доступны следующие значения: ‘auto’, ‘text’, ‘json’

    По умолчанию используется ‘auto’. Тип содержимого определяется автоматически. Другие форматы, доступные в MATLAB, такие как ‘audio’, ‘binary’ и т. д., пока не поддерживаются.

  • ‘ContentReader’ — пока не реализовано. Только для совместимости с MATLAB.
  • ‘MediaType’ — пока не реализовано. Только для совместимости с MATLAB.
  • ‘RequestMethod’ — задаёт тип отправляемого запроса.

    Доступны следующие методы: ‘get’, ‘put’, ‘post’, ‘delete’, ‘patch’

    webread использует метод HTTP GET. webwrite по умолчанию использует метод HTTP POST.

  • ‘ArrayFormat’ – пока не реализовано. Только для совместимости с MATLAB.
  • ‘CertificateFilename’ — пока не реализовано. Только для совместимости с MATLAB.

См. также: webread, webwrite.

© 1996–2026 The Octave Project Developers
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://docs.octave.org/v9.4.0/WWW-Access.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API