Форум русскоязычного сообщества Ubuntu
Страница сгенерирована за 0.043 секунд. Запросов: 23.
- Сайт
- Об Ubuntu
- Скачать Ubuntu
- Семейство Ubuntu
- Новости
- Форум
- Помощь
- Правила
- Документация
- Пользовательская документация
- Официальная документация
- Семейство Ubuntu
- Материалы для загрузки
- Совместимость с оборудованием
- RSS лента
- Сообщество
- Наши проекты
- Местные сообщества
- Перевод Ubuntu
- Тестирование
- RSS лента
© 2012 Ubuntu-ru — Русскоязычное сообщество Ubuntu Linux.
© 2012 Canonical Ltd. Ubuntu и Canonical являются зарегистрированными торговыми знаками Canonical Ltd.
Lwp request linux что это
This program can be used to send requests to WWW servers and your local file system. The request content for POST and PUT methods is read from stdin. The content of the response is printed on stdout. Error messages are printed on stderr. The program returns a status value indicating the number of URLs that failed.
The options are: -m Set which method to use for the request. If this option is not used, then the method is derived from the name of the program. -f Force request through, even if the program believes that the method is illegal. The server might reject the request eventually. -b This URI will be used as the base URI for resolving all relative URIs given as argument. -t Set the timeout value for the requests. The timeout is the amount of time that the program will wait for a response from the remote server before it fails. The default unit for the timeout value is seconds. You might append «m» or «h» to the timeout value to make it minutes or hours, respectively. The default timeout is ‘3m’, i.e. 3 minutes. -i Set the If-Modified-Since header in the request. If time is the name of a file, use the modification timestamp for this file. If time is not a file, it is parsed as a literal date. Take a look at HTTP::Date for recognized formats. -c Set the Content-Type for the request. This option is only allowed for requests that take a content, i.e. POST and PUT . You can force methods to take content by using the «-f» option together with «-c» . The default Content-Type for POST is «application/x-www-form-urlencoded» . The default Content-type for the others is «text/plain» . -p Set the proxy to be used for the requests. The program also loads proxy settings from the environment. You can disable this with the «-P» option. -H Send this HTTP header with each request. You can specify several, e.g.:
lwp-request \ -H 'Referer: http://other.url/' \ -H 'Host: somehost' \ http://this.url/
-C
The following options controls what is displayed by the program: -u Print request method and absolute URL as requests are made. -U Print request headers in addition to request method and absolute URL . -s Print response status code. This option is always on for HEAD requests. -S Print response status chain. This shows redirect and authorization requests that are handled by the library. -e Print response headers. This option is always on for HEAD requests. -d Do not print the content of the response. -o Process HTML content in various ways before printing it. If the content type of the response is not HTML , then this option has no effect. The legal format values are; text , ps , links , html and dump .
If you specify the text format then the HTML will be formatted as plain latin1 text. If you specify the ps format then it will be formatted as Postscript.
The links format will output all links found in the HTML document. Relative links will be expanded to absolute ones.
The html format will reformat the HTML code and the dump format will just dump the HTML syntax tree.
Note that the «HTML-Tree» distribution needs to be installed for this option to work. In addition the «HTML-Format» distribution needs to be installed for -o text or -o ps to work. -v Print the version number of the program and quit. -h Print usage message and quit. -x Extra debugging output. -a Set text(ascii) mode for content input and output. If this option is not used, content input and output is done in binary mode.
Because this program is implemented using the LWP library, it will only support the protocols that LWP supports.
SEE ALSO
lwp-mirror, LWP
COPYRIGHT
Copyright 1995-1999 Gisle Aas.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Команда lwp-request: опции, ключи и примеры использования
Общие команды – Общие команды, присущие различным операционным системам.
lwp-request
Simple command-line HTTP client. Built with libwww-perl.
- Make a simple GET request:
- Upload a file with a POST request:
- Make a request with a custom user agent:
- Make a request with HTTP authentication:
- Make a request and print request headers:
- Make a request and print response headers and status chain:
Примеры кода, демонстрирующие общие подходы в программировании или же решающие небольшие прикладные задачи. Языки программирования и библиотеки, позволяющие эффективно решать задачи разработки. Объектно-ориентированное программирование, функциональное программирование и прочие подходы и …

Трюки Bash
Полезные заметки по работе с командной строкой: bash и прочие *sh. Однострочники, скрипты, позволяющие решать большие и малые задачи администрирования и настройки Юникс систем. Zsh для современного MacOS, Bash для …

Заметки о настройке различных IT-штуковин. Настройка, допиливание, полировка. Конфигурируем приложения и тюнингуем сервера. Полезные параметры и ключи запуска программ. Увеличиваем скорость, уменьшаем отклик, ускоряем работу и улучшаем результаты работы. Объясняем …

Терминал/Консоль
Команды и инструкции терминала (консоли) Linux, MacOS, Windows и прочих операционных систем. Трюки и особенности командных оболочек, скрипты для администрирования Unix. Программирование и скриптование Windows и Linux, тонкая настройка Macos. …

Также может быть вам интересно:
- Как получить дерево директорий на Bash одним однострочником
- Python: Функции
- Python: Встроенные типы данных (list, set, dict, etc)
- Python: типы данных, переменные, логическое ветвление и циклы
- Как сделать свою middleware в Django (с примерами)
Свежее на «Цифре»
MessageId или как дебажить систему с минимумом проблем
Программы, 09.09.2023
Проверочный список для выпуска промышленных приложений с иллюстрациями
Работа и управление, 30.07.2023
В Google Pixel и Windows Snipping Tool есть возможность восстановления обрезанных изображений
Новости, 23.03.2023
Два подарка «под ёлочку» от Heroes of Might and Magic
Новости, 25.12.2022
Вышел Pulsar – редактор кода на основе Atom
Новости, 25.12.2022
Ленивый backup PostgreSQL
Программы, 17.12.2022
Google анонсировала OSV-Scanner: сканер уязвимостей в программных проектах
Новости, 16.12.2022

Gitea запускает коммерческую версию, а недовольные – форк Forĝejo
На днях группа бывших разработчиков Gitea решили создать на базе хостинга кода Gitea свою версию проекта – «Forgejo». Причиной тому …

Пользователи и их создание в Django — своя регистрация на сайте
Если вашим сайтом должны активно пользоваться несколько человек, то полезно их различать, а значит — надо уметь создавать пользователей, либо …

Новый синтаксис старой команды with в Python 3.10
Как же долго моё чувство прекрасного страдало… Но в Python 3.10 появился новый парсер синтаксических конструкций Python!

Добавляем постраничную пагинацию на Django сайт
На сайтах часто встречаются многостраничные объекты: список товаров, список заметок и т.д. Поэтому важно уметь добавить навигацию по страницам на …

Новый оператор match-case в Python
В новой версии Python (3.10) появится новый оператор. Новый оператор сопоставления по шаблону (match-case).

Нет слов, одни. однострочники
На днях вышел пост со списком полезных однострочников для JavaScript программистов. Памятуя Perl-овую молодость, заглянул туда.

Добавляем переменные в контекст Django шаблонов (свой контекст-процессор)
В Django вы можете передавать данные в шаблоны посредством контекстов. Контекст передаётся из контроллера (view в терминах Django), однако, если …

Пример своей консольной команды в Django проекте
Если вы работали с Django проектом, то, скорее всего, запускали команды из консоли (manage.py). В Django есть простой способ писать …

Разграничение прав доступа на Django сайте
Почти на любом веб-сайте необходимо разделять пользователей на группы и предоставлять им разные возможности. В Django есть довольно серьёзная система …
Отправка сетевых запросов из командной строки
Сетевые запросы, запущенные из командной строки, бывают разных форм и размеров. Некоторые пользователи признают только curl, другие любят wget. Кому-то больше нравится пакет lwp-request, который предоставляет команды со знакомыми названиями GET, POST и HEAD. Команда HEAD довольно регулярно используется для устранения неполадок с заголовками, возвращаемыми серверами.
Требования
Команды, которые мы собираемся использовать, предоставляются пакетом lwp-request.
Рассматриваемый пакет написан на Perl и, как правило, входит в стандартную комплектацию многих дистрибутивов Linux, а также других Unix-подобных операционных систем, таких как macOS.
Команду lwp-request можно вызвать напрямую с рядом аргументов, но для простоты мы рассмотрим вспомогательные сценарии, которые она поставляет.
Если в вашей системе нет GET, POST и HEAD, вы, скорее всего, сможете установить пакет lwp-request при помощи вашего любимого менеджера пакетов.
В Ubuntu- и Debian-подобных системах вы можете установить этот пакет с помощью следующих команд:
sudo apt update
sudo apt install libwww-perl
В CentOS, Rocky Linux, Fedora и других производных от RedHat системах вы можете установить его с поддержкой URL-адресов HTTPS при помощи такой команды:
sudo dnf install perl-libwww-perl.noarch perl-LWP-Protocol-https.noarch
GET-запросы
Предположим, нам так понравился логотип Alligator.io, что мы решили загрузить его на локальную машину. Чтобы получить файл, вы можете просто запустить GET-запрос:
Согласно философии Unix, команда GET предназначена для выполнения одной задачи, а именно извлечение файла.
Предыдущий формат отлично подходит для проверки URL-адреса, если вы хотите увидеть, что возвращает веб-сервер. Но если вы действительно хотите загрузить этот прекрасный логотип, вы должны направить результат в файл:
GET https://alligator.io/images/logo-fancy.svg > logo-fancy.svg
Теперь у нас есть локальная копия логотипа Alligator.io.
POST-запросы
Команда GET позволяет нам получать файлы с удаленных серверов, в то время как POST – отправлять данные на сервер для обработки, а также возвращать их вывод.
По сути синтаксис POST такой же, как GET:
Затем вам будет предложено ввести контент, который вы хотите отправить. Ожидаемая строка должна быть в формате строки запроса, который выглядит примерно так:
reptile=alligator&color=#008f68
Когда вы закончите вводить данные, просто нажмите CTRL-D, и контент будет опубликован. Сервис, в который вы отправляете сообщение, отразит запрос:
< "args": <>, "data": "", "files": <>, "form": < "color": "#008f68\n", "reptile": "alligator" >, "headers": < "Content-Length": "32", "Content-Type": "application/x-www-form-urlencoded", "Host": "httpbin.org", "User-Agent": "lwp-request/6.39 libwww-perl/6.39" >, "json": null, "origin": "203.0.113.5", "url": "https://httpbin.org/post" >
HEAD-запросы
Как уже упоминалось, команда HEAD чрезвычайно полезна для отладки и устранения неполадок. С большой долей вероятности можно сказать, что она входит в пятерку самых популярных утилит командной строки.
Подобно GET и POST, синтаксис HEAD довольно прост:
Эта команда вернет 200 OK, а также информацию о заголовках, возвращаемых веб-сервисом.
Команда HEAD по умолчанию дает информацию только о последней остановке в цепочке запросов. Чтобы увидеть все запросы, включая автоматический 301 Moved Permanently, передайте аргумент -S:
HEAD -S http://alligator.io/
Это дает нам немного больше информации:
HEAD http://alligator.io/ 301 Moved Permanently HEAD https://alligator.io/ 200 OK Cache-Control: public, max-age=0, must-revalidate Connection: close Date: Sat, 29 Jun 2019 00:49:18 GMT Age: 1 ETag: "8b85849c835909679fc1ba80b307d144-ssl" Server: Netlify Content-Length: 0 Content-Type: text/html; charset=UTF-8 Client-Date: Sat, 29 Jun 2019 00:49:18 GMT Client-Peer: 203.0.113.1:443 Client-Response-Num: 1 Client-SSL-Cert-Issuer: /C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3 Client-SSL-Cert-Subject: /CN=alligator.io Client-SSL-Cipher: TLS_AES_256_GCM_SHA384 Client-SSL-Socket-Class: IO::Socket::SSL Strict-Transport-Security: max-age=31536000 X-NF-Request-ID: 60babe56-c0ea-4658-aa5a-3e185f1e851f-10342
Цветной вывод
Однотонный вывод вас разочаровал? В таком случае для выполнения GET, POST и HEAD вы можете использовать псевдоним HTTP-команды HTTPie.
HTTPie может делать все, что делает библиотека lwp-request, с аналогичным синтаксисом, но с бонусом – она поддерживает цветной вывод.
В системах, производных от Ubuntu и Debian, установить HTTPie можно с помощью следующих команд:
sudo apt update
sudo apt install httpie
В дистрибутивах, производных от Centos, Rocky Linux, Fedora и RedHat, установить HTTPie помогут следующие команды, если у вас есть EPEL:
sudo dnf install epel-release
sudo dnf install httpie
Локальные псевдонимы команд выглядят так:
# HTTPie aliases alias GET='http' alias POST='http POST' alias HEAD='http HEAD'
Заключение
В следующий раз, когда вам нужно будет сделать сетевой запрос к API или устранить неполадки с заголовками, возвращаемыми сервером, вы можете сделать это с помощью командной строки, оставив Postman и другие подобные инструменты без дела.
Также это позволяет полностью отказаться от браузера!