我有一个超级简单的Web服务器,由于某种原因,println!
语句打印出两次。为什么会这样?
extern crate iron;
use iron::prelude::*;
use iron::status;
fn hello_world(_: &mut Request) -> IronResult<Response> {
println!("Said Hello World");
Ok(Response::with((status::Ok, "Hello World\n")))
}
fn main() {
Iron::new(hello_world).http("localhost:8000").unwrap();
}
每次刷新浏览器时,shell中的输出都是:
Said Hello World
Said Hello World
我只希望打印一行。似乎我的hello_world
函数被调用了两次。我错过了什么?
答案 0 :(得分:2)
您的浏览器可能会自动尝试抓取favicon.ico
。检查Request
的内容以确定! :)您的浏览器也可能有一个网络监视器作为其开发人员工具的一部分;这应该向您显示favicon.ico
的请求(我知道它在Firefox中有用,不了解其他浏览器)。