rust实战入门到进阶(4)
web网页-hello,world
extern crate iron;
extern crate time;use iron::prelude::*;
use iron::{BeforeMiddleware, AfterMiddleware, typemap};
use time::precise_time_ns;struct ResponseTime;impl typemap::Key for ResponseTime { type Value = u64; }impl BeforeMiddleware for ResponseTime {fn before(&self, req: &mut Request) -> IronResult<()> {req.extensions.insert::<ResponseTime>(precise_time_ns());Ok(())}
}impl AfterMiddleware for ResponseTime {fn after(&self, req: &mut Request, res: Response) -> IronResult<Response> {let delta = precise_time_ns() - *req.extensions.get::<ResponseTime>().unwrap();println!("Request took: {} ms", (delta as f64) / 1000000.0);Ok(res)}
}fn hello_world(_: &mut Request) -> IronResult<Response> {Ok(Response::with((iron::status::Ok, "Hello World")))
}fn main() {let mut chain = Chain::new(hello_world);chain.link_before(ResponseTime);chain.link_after(ResponseTime);Iron::new(chain).http("localhost:3000").unwrap();
}
Cargo.toml
[package]
name = "learnrust6"
version = "0.1.0"
authors = ["spxai <lx@myhaspl.com>"]
edition = "2018"# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html[dependencies]
iron = "0.6.1"
time = "0.2.26"
rust实战入门到进阶(4)相关推荐
- rust实战入门到进阶(2)
Cargo是构建系统和包装管理.大多数Rustaceans使用这个工具来管理他们的Rust项目,因为Cargo处理许多任务,比如构建代码.下载代码所依赖的库以及构建这些库. lxaipro@insta ...
- rust实战入门到进阶(1)
1.自适应安装 (1)在Unix/Linux下,使用curl https://sh.rustup.rs -sSf | sh在Shell中运行,它自动启动安装过程:首先,下载并运行rustup-init ...
- rust实战入门到进阶(3)
绑定变量 fn main() {println!("Hello, world!");let x=1;let mut y=2;println!("{}-{}",x ...
- dt测试软件的学习心得,无线网络优化dt测试心得_适合新手入门,高手进阶_5年项目经验实战经验.docx...
无线网络优化DT测试心得_适合新手入门,高手进阶_5年项目经验实战经验 无线网络优化DT测试心得_适合新手入门,高手进阶_5年项目经验实战经验 路测中不常见的问题和个人心得 1.深井子镇投诉测试报告 ...
- flask web开发是前端还是后端_Flask Web开发实战:入门、进阶与原理解析 PDF 全格式版...
给大家带来的一篇关于Flask相关的电子书资源,介绍了关于Flask.Web.开发实战方面的内容,本书是由机械工业出版社出版,格式为PDF,资源大小12.2M,李辉编写,目前豆瓣.亚马逊.当当.京东等 ...
- python带我起飞_Python带我起飞:入门、进阶、商业实战
<Python带我起飞:入门.进阶.商业实战>针对Python3.5以上版本,采用"理论+实践"的形式编写,通过大量的实例(共42个),全面而深入地讲解"Py ...
- OpenCV入门到进阶:实战三大典型项目(更新至12) IT自学视频教程
OpenCV入门到进阶:实战三大典型项目(更新至12) IT自学视频教程 vip视频教程人脸识别.自动驾驶.物体检测--想进军未来高科技行业,OpenCV是基石.本课程带你系统掌握计算机视觉核心知识体 ...
- Vue3+TypeScript从入门到进阶(六)——TypeScript知识点——附沿途学习案例及项目实战代码
文章目录 一.简介 二.Vue2和Vue3区别 三.Vue知识点学习 四.TypeScript知识点 一.JavaScript和TypeScript 二.TypeScript的安装和使用 1.Type ...
- 100个Python实战项目(附源码),练完即可就业,从入门到进阶
前言: "读"代码是不能给你带来任何收益的,正如"读书"一样,如果在读的时候你不琢磨,保管你读完仨月准忘了一大半.真正需要的是去"试"代码, ...
最新文章
- PCL:官方程序 Region growing segmentation
- DDos游戏行业受攻击最多
- 关于寻路算法的一些思考(6):预先计算好的路径的所用空间
- python嵌入java_python怎样嵌入java
- 【IDEA工具】java通过IDEA打包项目
- 力扣868. 二进制间距
- PSD分层情人节海报模板,让人眼前一亮
- 使用js数组sort比较函数,实现按照对象的某个属性对数组进行排序
- 将图像顺时针旋转90度c语言,高中信息技术试卷|信息技术试卷下载_21试卷_21世纪教育网...
- 用curl访问HTTPS站点并登录
- 使计算机进入休眠状态
- Ubuntu12.04 apt-get 安装mysql
- django中admin的使用
- vs2017优雅配色
- 使用Hexo 在本地搭建博客(一)
- cairo填充_用 cairo 实现跨平台图形
- 一千座5G工厂的花苞
- 手把手带你使用ZigBee——通过爱智控制EFR32,以及 Simplicity Studio 使用过程中注意事项
- 是否真的输在起跑线上?
- Cause: java.sql.SQLException: 无效的列类型: 1111解决
热门文章
- 【BZOJ3821/UOJ46】玄学(二进制分组,线段树)
- 编译gcc4.4.6与ICE遇到的几个问题
- javascript篇-知道value值,返回对象中的key值
- elk集群配置配置文件中节点数配多少
- web前端学习总结--JQuery
- redis基础之订阅发布、主从复制和事务(四)
- Android简易实战教程--第四十七话《使用OKhttp回调方式获取网络信息》
- C#设置标记方法等为否决的不可用
- JSBinding + SharpKit / 实战:转换 Stealth
- 如何在Web应用程序中使用TWAIN驱动程序的自定义功能?