The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Выпуск языка программирования Rust 1.77, opennews (?), 22-Мрт-24, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


118. "Выпуск языка программирования Rust 1.77"  –3 +/
Сообщение от Аноним (118), 22-Мрт-24, 20:42 
Простой веб-сервер
```rust
extern crate iron;
#[macro_use] extern crate mime;

use iron::prelude::*;
use iron::status;

fn main() {
  println!("Сервер слушает на http://localhost:3000...");
  Iron::new(get_form).http("localhost:3000").unwarap();
}

fn get_form(_request: &mut Request) -> IronResult<Response> {
  let mut response = Response::new();

  response.set_mut(status::Ok);
  response.set_mut(mime!(Text/Html; Charset=Utf8));
  response.set_mut(r#"
    <title>Калькулятор двух чисел</title>
    <form action="/gcd" method="post">
      <input type="text" name="n"/>
      <input type="text" name="n"/>
      <button type="submit">Ну посчитай</button>
    </form>
  "#);
```
Больше всего мне лично синтаксис не нравится.

Ответить | Правка | К родителю #56 | Наверх | Cообщить модератору

122. "Выпуск языка программирования Rust 1.77"  +5 +/
Сообщение от Аноним (122), 22-Мрт-24, 21:08 
Это не "простой веб-сервер". Твой iron умер 5 лет назад и никем никогда не использовался.
Более того, extern crate уже давно не нужно использовать.

Какой-то коммент, застрявший во времени

Ответить | Правка | Наверх | Cообщить модератору

133. "Выпуск языка программирования Rust 1.77"  +2 +/
Сообщение от freecoder (ok), 22-Мрт-24, 21:47 
Вот вам актуальный вариант:
use std::io;

use axum::response::{Html, IntoResponse};
use axum::routing::get;
use axum::Router;
use tokio::net::TcpListener;

#[tokio::main]
async fn main() -> io::Result<()> {
    let app = Router::new().route("/", get(get_form));
    let listener = TcpListener::bind("0.0.0.0:3000").await?;

    axum::serve(listener, app).await
}

async fn get_form() -> impl IntoResponse {
    Html(
        r#"
            <title>Калькулятор двух чисел</title>
            <form action="/gcd" method="post">
                <input type="text" name="n"/>
                <input type="text" name="n"/>
                <button type="submit">Ну посчитай</button>
            </form>
        "#,
    )
}


Ответить | Правка | Наверх | Cообщить модератору

135. "Выпуск языка программирования Rust 1.77"  –1 +/
Сообщение от Аноним (184), 22-Мрт-24, 21:52 
>[оверквотинг удален]
>     <input type="text" name="n"/>
>            
>     <input type="text" name="n"/>
>            
>     <button type="submit">Ну посчитай</button>
>            
> </form>
>         "#,
>     )
> }

добавь сюда Cargo.lock, пожалуйста, плайнтекстом.

Ответить | Правка | Наверх | Cообщить модератору

136. "Выпуск языка программирования Rust 1.77"  +1 +/
Сообщение от freecoder (ok), 22-Мрт-24, 21:54 
> добавь сюда Cargo.lock, пожалуйста, плайнтекстом.

Зачем?


Ответить | Правка | Наверх | Cообщить модератору

137. "Выпуск языка программирования Rust 1.77"  –3 +/
Сообщение от Аноним (184), 22-Мрт-24, 21:59 
>> добавь сюда Cargo.lock, пожалуйста, плайнтекстом.
> Зачем?

Поржать, господи, что ты серьёзный такой, бро? (。◕‿‿◕。)

Ответить | Правка | Наверх | Cообщить модератору

189. "Выпуск языка программирования Rust 1.77"  +/
Сообщение от Sw00p aka Jerom (?), 23-Мрт-24, 16:26 
ага еще и CoC.md :)
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру