Однофайловая библиотека на C++11 для создания HTTP/HTTPS-серверов и клиентов с блокирующим вводом-выводом через сокеты.
seanmonstar/reqwest
Удобный HTTP-клиент для Rust с async- и блокирующим API, поддержкой JSON, multipart, прокси, cookies и rustls TLS.
- Звёзды
- 11,900
- Форки
- 1,438
- Открытые issues
- 487
- Последний коммит
- 18 дней назад
Что это?
reqwest — библиотека HTTP-клиента для Rust. Она предоставляет как async-, так и блокирующий клиент, поэтому подходит и для асинхронных программ на базе Tokio, и для простого синхронного кода. Тела запросов могут содержать обычные байты, JSON, urlencoded-формы или multipart-загрузки, а ответы можно декодировать в типизированные значения.
В библиотеке есть настраиваемая политика перенаправлений, поддержка HTTP-прокси и хранилище cookies. По умолчанию HTTPS работает через rustls; feature native-tls переключает библиотеку на системный TLS-стек в Windows и macOS либо на OpenSSL в Linux. Также доступен вариант со встроенным OpenSSL. Crate можно собрать и для WASM.
Ключевые возможности
- 01Async- и блокирующий клиенты
- 02Тела запросов в форматах JSON, urlencoded и multipart
- 03Настраиваемая политика перенаправлений
- 04Поддержка HTTP-прокси
- 05HTTPS через rustls или системный TLS
- 06Хранилище cookies и поддержка WASM
Сценарии использования
- Вызов REST- или JSON API из сервиса или CLI на Rust
- Загрузка файлов с помощью multipart-запросов
- Выполнение синхронных HTTP-запросов в небольшом инструменте без async-рантайма
Быстрый старт
- 1
Добавьте reqwest с feature json и tokio в Cargo.toml
reqwest = { version = "0.13", features = ["json"] } - 2
Добавьте tokio с полным набором features в Cargo.toml
tokio = { version = "1", features = ["full"] } - 3
Запишите пример кода из README в src/main.rs и запустите его
Что важно знать
- Для работы Native TLS в Linux необходимо установить OpenSSL или включить feature vendored.
В подборках
Темы
Частые вопросы
- Что такое reqwest?
- Удобный HTTP-клиент для Rust с async- и блокирующим API, поддержкой JSON, multipart, прокси, cookies и rustls TLS. reqwest — библиотека HTTP-клиента для Rust. Она предоставляет как async-, так и блокирующий клиент, поэтому подходит и для асинхронных программ на базе Tokio, и для простого синхронного кода. Тела запросов могут содержать обычные байты, JSON, urlencoded-формы или multipart-загрузки, а ответы можно декодировать в типизированные значения.
- reqwest можно использовать бесплатно? Какая у него лицензия?
- reqwest распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- reqwest всё ещё поддерживается?
- Активно поддерживается. Последний коммит в reqwest — 19 окт. 2026 г..
- Для чего можно использовать reqwest?
- Вызов REST- или JSON API из сервиса или CLI на Rust Загрузка файлов с помощью multipart-запросов Выполнение синхронных HTTP-запросов в небольшом инструменте без async-рантайма
- Как установить reqwest?
- Добавьте reqwest с feature json и tokio в Cargo.toml: reqwest = { version = "0.13", features = ["json"] } Добавьте tokio с полным набором features в Cargo.toml: tokio = { version = "1", features = ["full"] } Запишите пример кода из README в src/main.rs и запустите его
- Где скачать reqwest?
- Исходный код и инструкции по установке — на GitHub: https://github.com/seanmonstar/reqwest
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Настольный API-клиент для REST, GraphQL, WebSocket, SSE и gRPC на базе Tauri, Rust и React; работает офлайн и не собирает телеметрию.
Hurl — CLI-инструмент для выполнения и тестирования HTTP-запросов, записанных в текстовом файле.
HTTP-клиент с TUI для создания и выполнения REST-запросов из коллекций YAML, которые можно хранить в системе контроля версий.
Настольный набор инструментов для разработчиков: быстрые заметки, форматирование JSON, HTTP-запросы, кодирование, криптография, QR-коды, cron и многое другое.
Открытая экосистема для разработки API: отправка REST-, GraphQL-, WebSocket-, SSE-, Socket.IO- и MQTT-запросов через веб-приложение, десктопные приложения и CLI.