Commit 60cb0f98 authored by Chunchi Che's avatar Chunchi Che

setup

parent 8f3c4356
...@@ -8,3 +8,8 @@ Cargo.lock ...@@ -8,3 +8,8 @@ Cargo.lock
# These are backup files generated by rustfmt # These are backup files generated by rustfmt
**/*.rs.bk **/*.rs.bk
# Added by cargo
/target
[package]
name = "neos-rs"
version = "0.1.0"
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
tokio = { version = "1.21.0", features = ["full"] }
hyper = { version = "0.14.0", features = ["full"] }
anyhow = "1"
log = "0.4"
pretty_env_logger = "0.4"
error_on_line_overflow = false
format_strings = true
normalize_comments = true
imports_granularity = "Crate"
reorder_modules = true
# enum_discrim_align_threshold = 20
use_try_shorthand = true
wrap_comments = true
edition = "2021"
\ No newline at end of file
use hyper::{server as HyperServer, service as HyperService};
use tokio::net::TcpListener;
const ADDR: &str = "127.0.0.1:3000";
#[tokio::main]
async fn main() -> anyhow::Result<()> {
pretty_env_logger::try_init()?;
let listener = TcpListener::bind(ADDR).await?;
log::info!("Listening on https://{}", ADDR);
loop {
let (stream, _) = listener.accept().await?;
tokio::spawn(async move {
if let Err(e) = HyperServer::conn::Http::new()
.serve_connection(stream, HyperService::service_fn(hello))
.await
{
log::error!("Hyper serve_connection error={:?}", e);
}
});
}
}
async fn hello(_: hyper::Request<hyper::Body>) -> anyhow::Result<hyper::Response<hyper::Body>> {
Ok(hyper::Response::new("hello, Neos.".into()))
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment