【每周一庫】 Sincere – a micro web framework for Rust

本期的每周一庫帶來的是sincere庫,一個(gè)輕量級(jí)的線程web框架。

Sincere庫可以快速的搭建一個(gè)本地的web服務(wù)器,并且支持路由和中間件,操作起來非常像node搭建的web服務(wù)器,適合于快速測(cè)試和原型搭建。

首先是一些有用的鏈接

Sincere github repoSincere crate docs

接下來我們快速試用Sincere庫,你會(huì)發(fā)現(xiàn)非常非常的直觀和簡(jiǎn)單,這里搭建一個(gè)簡(jiǎn)單的返回字符串的web服務(wù)器,類似node下的helloworld和python flask的helloworld。

測(cè)試環(huán)境

cargo –version: cargo 1.46.0-nightly (089cbb80b 2020-06-15)rustc –version: rustc 1.46.0-nightly (6bb3dbfc6 2020-06-22)OS: windows 10

創(chuàng)建工程后首先在Cargo.toml文件中添加依賴

代碼語言:JavaScript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

[dependencies]sincere = "0.7.0-alpha.1"

寫入示例代碼

代碼語言:javascript代碼運(yùn)行次數(shù):0運(yùn)行復(fù)制

extern crate sincere;use sincere::App;fn main() {    let mut app = App::new();    app.get("/", |context| {        context.response.from_text("Hello Sincere!").unwrap();    });    app.run("127.0.0.1:8000").unwrap();}

運(yùn)行效果如下:

【每周一庫】 Sincere – a micro web framework for Rust

訪問本地url

【每周一庫】 Sincere – a micro web framework for Rust

寫在最后,本期的每周一庫測(cè)試了兩個(gè)很久沒有維護(hù)的rust庫,github上顯示最后更新均為四年之前。一個(gè)名為Rustful,另一個(gè)名為Rustless。這兩個(gè)庫都因?yàn)殚L(zhǎng)時(shí)間沒有更新導(dǎo)致依賴項(xiàng)版本脫節(jié),基本處于不可用的狀態(tài)。

其中Rustful庫使用openssl相關(guān)的依賴,導(dǎo)致依賴的Opnessl 0.7.14版本過低,無法完成編譯,在Windows下進(jìn)行測(cè)試過程中cargo build會(huì)出現(xiàn)openssl build失敗錯(cuò)誤,簡(jiǎn)要分析原因是因?yàn)閞ustful依賴的openssl版本為0.7.14,版本過于老舊,并不支持openssl 1.0.1版本。錯(cuò)誤信息如下:

【每周一庫】 Sincere – a micro web framework for Rust

所以在使用庫的時(shí)候最好選擇還在維護(hù),并且關(guān)鍵依賴項(xiàng)沒有過期的庫非常重要。

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊11 分享