Давайте начнем

Часть 1: создание проекта

Создадим новый ржавый проект с грузом

> cargo new my-server
> cd my-server
> cargo run

Часть 2. Установка платформы Rocket

Введение в фреймворк Rocket

Мы будем использовать фреймворк Rocket для создания нашего сервера
Rocket — это фреймворк для Rust, который упрощает написание быстрых и безопасных веб-приложений без ущерба для гибкости, удобства использования или безопасности типов.< br /> https://rocket.rs/

В каталоге вашего проекта вы можете найти файл Cargo.toml. Перейдите к этому файлу и добавьте Rocket dependency.
Файл Cargo.toml аналогичен package.json в nodejs.

[package]
name = "my-server"
version = "0.1.0"
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
rocket = {version = "0.5.0-rc.1", features = ["json"]}

Часть 3. Создание веб-сервера

Перейдите к файлу main.rs, доступному в корневом каталоге в папке src.

Во-первых, нужно импортировать ракету
мы импортируем ракету с помощью macro_use, потому что фреймворк ракеты широко использует макросы.

#[macro_use] extern crate rocket;

Избавьтесь от основной функции по умолчанию

fn main() {
println!("Hello, world!");
}

Затем мы добавим наш первый маршрут
GET http://localhost:8000/server/hello-world

#[get("/hello-world")]
fn hello_world() -> &'static str {"Hello world"}

Наконец, давайте создадим наш сервер, который по умолчанию будет прослушивать порт 8000.

#[launch]
fn rocket()-> _ {
rocket::build().mount( "/server", routes![hello_world])
}

функция монтирования ракеты используется для монтирования маршрутов. Его первый параметр — это базовый маршрут, а второй параметр — все наши маршруты.

Наконец, ваш main.rs должен выглядеть примерно так

#[macro_use] extern crate rocket;

#[get("/hello-world")]
fn hello_world() -> &'static str {
"Hello world"
}

#[launch]
fn rocket()-> _ {
rocket::build().mount( "/server", routes![hello_world])
}

Часть 4: Запуск на ваш веб-сервер

cargo run

Посетим наш маршрут

http://локальный:8000/сервер/привет-мир

Спасибо за прочтение :)
Амог Чаван

Github: https://github.com/amogh-chavan
LinkedIn: https://www.linkedin.com/in/amogh-chavan/