admin管理员组文章数量:1201975
I'm working on self portal using rust and HTTP. However I'm getting below error while importing Server
I'm using full features in dependency. I tried many ways to import like use hyper::{Body, Request, Response, Server};
but no luck
use hyper::server::Server;
| ^^^^^^^^^^^^^^^^^^^^^ no `Server` in `server`
Here are dependency
hyper = { version = "^1.0.1", features = ["full"]}
serde = { version = "^1.0.203", features = ["derive"] }
serde_derive = "^1.0.203"
serde_json = { version = "^1.0.133", features = ["raw_value"] }
serde_with = { version = "^3.8.2", features = ["chrono"] }
here is my main.rs
use axum::{
extract::Form,
response::{Html, Redirect},
routing::{get, post},
Router,
Extension,
};
use hyper::server::Server;
use serde::Deserialize;
use std::net::SocketAddr;
use tera::{Context, Tera};
#[derive(Deserialize)]
struct CreateDagForm {
dag_name: String,
schedule: String,
}
async fn show_base(Extension(tera): Extension<Tera>) -> Html<String> {
let rendered = tera.render("base.html", &Context::new()).unwrap();
Html(rendered)
}
async fn create_dag(Form(form): Form<CreateDagForm>) -> Redirect {
println!("Received DAG: Name = {}, Schedule = {}", form.dag_name, form.schedule);
Redirect::to("/")
}
#[tokio::main]
async fn main() {
let tera = Tera::new("templates/**/*").expect("Failed to initialize Tera");
let app = Router::new()
.route("/", get(show_base))
.route("/create_dag", post(create_dag))
.layer(Extension(tera));
let addr = SocketAddr::from(([127, 0, 0, 1], 3000));
println!("Server running at http://{}", addr);
Server::bind(&addr)
.serve(app.into_make_service())
.await
.unwrap();
}
i tried many ways like below
let Server = hyper::server::Server::bind(&addr)
.serve(app.into_make_service())
.await
.unwrap();
but I'm getting same error
unresolved import `hyper::server::Server`
--> src/main.rs:8:5
|
8 | use hyper::server::Server;
| ^^^^^^^^^^^^^^^^^^^^^ no `Server` in `server`
I'm working on self portal using rust and HTTP. However I'm getting below error while importing Server
I'm using full features in dependency. I tried many ways to import like use hyper::{Body, Request, Response, Server};
but no luck
use hyper::server::Server;
| ^^^^^^^^^^^^^^^^^^^^^ no `Server` in `server`
Here are dependency
hyper = { version = "^1.0.1", features = ["full"]}
serde = { version = "^1.0.203", features = ["derive"] }
serde_derive = "^1.0.203"
serde_json = { version = "^1.0.133", features = ["raw_value"] }
serde_with = { version = "^3.8.2", features = ["chrono"] }
here is my main.rs
use axum::{
extract::Form,
response::{Html, Redirect},
routing::{get, post},
Router,
Extension,
};
use hyper::server::Server;
use serde::Deserialize;
use std::net::SocketAddr;
use tera::{Context, Tera};
#[derive(Deserialize)]
struct CreateDagForm {
dag_name: String,
schedule: String,
}
async fn show_base(Extension(tera): Extension<Tera>) -> Html<String> {
let rendered = tera.render("base.html", &Context::new()).unwrap();
Html(rendered)
}
async fn create_dag(Form(form): Form<CreateDagForm>) -> Redirect {
println!("Received DAG: Name = {}, Schedule = {}", form.dag_name, form.schedule);
Redirect::to("/")
}
#[tokio::main]
async fn main() {
let tera = Tera::new("templates/**/*").expect("Failed to initialize Tera");
let app = Router::new()
.route("/", get(show_base))
.route("/create_dag", post(create_dag))
.layer(Extension(tera));
let addr = SocketAddr::from(([127, 0, 0, 1], 3000));
println!("Server running at http://{}", addr);
Server::bind(&addr)
.serve(app.into_make_service())
.await
.unwrap();
}
i tried many ways like below
let Server = hyper::server::Server::bind(&addr)
.serve(app.into_make_service())
.await
.unwrap();
but I'm getting same error
unresolved import `hyper::server::Server`
--> src/main.rs:8:5
|
8 | use hyper::server::Server;
| ^^^^^^^^^^^^^^^^^^^^^ no `Server` in `server`
Share
Improve this question
asked Jan 22 at 9:15
SuryaSurya
11 silver badge
1 Answer
Reset to default 1There is no Server
type in that module in the latest version. The last version to have that type is 0.14.32, but you are requesting at least 1.0.1.
There's a few ways you could fix this:
- Downgrade hyper to 0.14.32.
- Rewrite your code to work with newer versions of hyper, which require a bit more boilerplate. See hyper's own getting started guide.
- Use a higher-level HTTP service library, such as axum.
本文标签: httpServer module not available in HyperStack Overflow
版权声明:本文标题:http - Server module not available in Hyper - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1738575355a2100845.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论