actix-web README

The project's README from github.com/actix/actix-web. As one markdown file: README.md.

Actix Web

Actix Web is a powerful, pragmatic, and extremely fast web framework for Rust

crates.io Documentation MSRV MIT or Apache 2.0 licensed Dependency Status
CI Coverage downloads Chat on Discord

Features

Experimental features

To enable faster release iterations, we mark some features as experimental. These features are prefixed with experimental and a breaking change may happen at any release. Please use them in a production environment at your own risk.

Documentation

Example

Dependencies:

[dependencies]
actix-web = "4"

Code:

use actix_web::{get, web, App, HttpServer, Responder};

#[get("/hello/{name}")]
async fn greet(name: web::Path<String>) -> impl Responder {
    format!("Hello {name}!")
}

#[actix_web::main] // or #[tokio::main]
async fn main() -> std::io::Result<()> {
    HttpServer::new(|| {
        App::new().service(greet)
    })
    .bind(("127.0.0.1", 8080))?
    .run()
    .await
}

More Examples

You may consider checking out this directory for more examples.

Benchmarks

One of the fastest web frameworks available according to the TechEmpower Framework Benchmark.

License

This project is licensed under either of the following licenses, at your option:

Code of Conduct

Contribution to the actix/actix-web repo is organized under the terms of the Contributor Covenant. The Actix team promises to intervene to uphold that code of conduct.

actix-web (actix/actix-web)

Searching Database…

24.9K ·GitHub
Что это такое?Actix Web — мощный, практичный и очень быстрый веб-фреймворк для Rust, который используют для создания веб-серверов, API и сервисов реального времени.
Это полноценный фреймворк или просто тонкая HTTP-библиотека?Полноценный веб-фреймворк: маршрутизация запросов с опциональными макросами, middleware, WebSockets, раздача статических файлов, сжатие контента и встроенный HTTP-клиент — всё в одном пакете.
Как начать делать сервер на нём?Добавьте крейт actix-web в свой Cargo.toml и начните с примеров Hello World или Basic Setup из репозитория с примерами проекта.
Какая версия Rust нужна, и есть ли поддержка async из коробки?Достаточно стабильного Rust 1.88 или новее, а async работает сразу: фреймворк полностью совместим с Tokio, так что настраивать дополнительный рантайм не нужно.
Есть ли части, которые нестабильны или рискованно использовать?Фичи с префиксом 'experimental' могут измениться в любом релизе, и в README сказано использовать их в продакшене на свой страх и риск.
Можно ли бесплатно использовать в коммерческих проектах?Да, он распространяется по двойной лицензии Apache-2.0 и MIT, и вы выбираете любую из этих двух лицензий для своего проекта.
А он правда один из самых быстрых веб-фреймворков?В README есть ссылка на бенчмарк TechEmpower Framework Benchmark, где Actix Web входит в число самых быстрых доступных веб-фреймворков.
Он только принимает входящие запросы или умеет и сам делать HTTP-вызовы?И то, и другое: помимо серверной части, он интегрируется с HTTP-клиентом awc для исходящих запросов.
Есть готовые примеры для баз данных и WebSockets?Да. В репозитории с примерами есть работа с JSON, интеграция с MongoDB, Diesel, SQLite и Postgres, шаблоны Tera и Askama, HTTPS через Rustls или OpenSSL и чат на WebSocket.
What are similar projects?echo, warp, starlette, Rocket, aiohttp, axum, pingora, nginxconfig.io
Creator
actix
Size
17.9 MB
Stars
24.9K
Age
9y
Commits · 90 Days