Repolode
seanmonstar

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. 1

    Добавьте reqwest с feature json и tokio в Cargo.toml

    reqwest = { version = "0.13", features = ["json"] }
  2. 2

    Добавьте tokio с полным набором features в Cargo.toml

    tokio = { version = "1", features = ["full"] }
  3. 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 обновляется ежедневно.

Похожие проекты

Настольный набор инструментов для разработчиков: быстрые заметки, форматирование JSON, HTTP-запросы, кодирование, криптография, QR-коды, cron и многое другое.

2,1 тыс.263KotlinMITАктивно поддерживаетсяОбновлён 5 дней назад