pub struct HttpServerBuilder<F, S: State = Empty> { /* private fields */ }
Expand description
Use builder syntax to set the inputs and finish with build()
.
Implementations§
Source§impl<F, S: State> HttpServerBuilder<F, S>
impl<F, S: State> HttpServerBuilder<F, S>
Sourcepub fn build(self) -> HttpServer<F>where
S: IsComplete,
pub fn build(self) -> HttpServer<F>where
S: IsComplete,
Finish building and return the requested object
Sourcepub fn ctx(self, value: Context) -> HttpServerBuilder<F, SetCtx<S>>where
S::Ctx: IsUnset,
pub fn ctx(self, value: Context) -> HttpServerBuilder<F, SetCtx<S>>where
S::Ctx: IsUnset,
Sourcepub fn maybe_ctx(
self,
value: Option<Context>,
) -> HttpServerBuilder<F, SetCtx<S>>where
S::Ctx: IsUnset,
pub fn maybe_ctx(
self,
value: Option<Context>,
) -> HttpServerBuilder<F, SetCtx<S>>where
S::Ctx: IsUnset,
Sourcepub fn worker_tasks(
self,
value: usize,
) -> HttpServerBuilder<F, SetWorkerTasks<S>>where
S::WorkerTasks: IsUnset,
pub fn worker_tasks(
self,
value: usize,
) -> HttpServerBuilder<F, SetWorkerTasks<S>>where
S::WorkerTasks: IsUnset,
Sourcepub fn maybe_worker_tasks(
self,
value: Option<usize>,
) -> HttpServerBuilder<F, SetWorkerTasks<S>>where
S::WorkerTasks: IsUnset,
pub fn maybe_worker_tasks(
self,
value: Option<usize>,
) -> HttpServerBuilder<F, SetWorkerTasks<S>>where
S::WorkerTasks: IsUnset,
Sourcepub fn service_factory(
self,
value: F,
) -> HttpServerBuilder<F, SetServiceFactory<S>>where
S::ServiceFactory: IsUnset,
pub fn service_factory(
self,
value: F,
) -> HttpServerBuilder<F, SetServiceFactory<S>>where
S::ServiceFactory: IsUnset,
Required.
The service factory that will be used to create new services.
Sourcepub fn bind(self, value: SocketAddr) -> HttpServerBuilder<F, SetBind<S>>where
S::Bind: IsUnset,
pub fn bind(self, value: SocketAddr) -> HttpServerBuilder<F, SetBind<S>>where
S::Bind: IsUnset,
Required.
The address to bind to.
Use [::]
for a dual-stack listener.
For example, use [::]:80
to bind to port 80 on both IPv4 and IPv6.
Sourcepub fn enable_http1(
self,
value: bool,
) -> HttpServerBuilder<F, SetEnableHttp1<S>>where
S::EnableHttp1: IsUnset,
pub fn enable_http1(
self,
value: bool,
) -> HttpServerBuilder<F, SetEnableHttp1<S>>where
S::EnableHttp1: IsUnset,
Sourcepub fn maybe_enable_http1(
self,
value: Option<bool>,
) -> HttpServerBuilder<F, SetEnableHttp1<S>>where
S::EnableHttp1: IsUnset,
pub fn maybe_enable_http1(
self,
value: Option<bool>,
) -> HttpServerBuilder<F, SetEnableHttp1<S>>where
S::EnableHttp1: IsUnset,
Sourcepub fn enable_http2(
self,
value: bool,
) -> HttpServerBuilder<F, SetEnableHttp2<S>>where
S::EnableHttp2: IsUnset,
pub fn enable_http2(
self,
value: bool,
) -> HttpServerBuilder<F, SetEnableHttp2<S>>where
S::EnableHttp2: IsUnset,
Sourcepub fn maybe_enable_http2(
self,
value: Option<bool>,
) -> HttpServerBuilder<F, SetEnableHttp2<S>>where
S::EnableHttp2: IsUnset,
pub fn maybe_enable_http2(
self,
value: Option<bool>,
) -> HttpServerBuilder<F, SetEnableHttp2<S>>where
S::EnableHttp2: IsUnset,
Sourcepub fn rustls_config(
self,
value: ServerConfig,
) -> HttpServerBuilder<F, SetRustlsConfig<S>>where
S::RustlsConfig: IsUnset,
pub fn rustls_config(
self,
value: ServerConfig,
) -> HttpServerBuilder<F, SetRustlsConfig<S>>where
S::RustlsConfig: IsUnset,
Sourcepub fn maybe_rustls_config(
self,
value: Option<ServerConfig>,
) -> HttpServerBuilder<F, SetRustlsConfig<S>>where
S::RustlsConfig: IsUnset,
pub fn maybe_rustls_config(
self,
value: Option<ServerConfig>,
) -> HttpServerBuilder<F, SetRustlsConfig<S>>where
S::RustlsConfig: IsUnset,
Source§impl<F, S> HttpServerBuilder<F, S>where
S: State,
S::EnableHttp3: IsUnset,
S::RustlsConfig: IsSet,
impl<F, S> HttpServerBuilder<F, S>where
S: State,
S::EnableHttp3: IsUnset,
S::RustlsConfig: IsSet,
Sourcepub fn enable_http3(
self,
enable_http3: bool,
) -> HttpServerBuilder<F, SetEnableHttp3<S>>
Available on crate feature http3
only.
pub fn enable_http3( self, enable_http3: bool, ) -> HttpServerBuilder<F, SetEnableHttp3<S>>
http3
only.Enable HTTP/3 support.
First enable TLS by calling rustls_config
to enable HTTP/3.
Source§impl<M, S> HttpServerBuilder<TowerMakeServiceFactory<M, ()>, S>where
M: MakeService<(), IncomingRequest> + Send,
M::Future: Send,
M::Service: HttpService,
S: State,
S::ServiceFactory: IsUnset,
impl<M, S> HttpServerBuilder<TowerMakeServiceFactory<M, ()>, S>where
M: MakeService<(), IncomingRequest> + Send,
M::Future: Send,
M::Service: HttpService,
S: State,
S::ServiceFactory: IsUnset,
Sourcepub fn tower_make_service_factory(
self,
tower_make_service: M,
) -> HttpServerBuilder<TowerMakeServiceFactory<M, ()>, SetServiceFactory<S>>
Available on crate feature tower
only.
pub fn tower_make_service_factory( self, tower_make_service: M, ) -> HttpServerBuilder<TowerMakeServiceFactory<M, ()>, SetServiceFactory<S>>
tower
only.Same as calling service_factory(tower_make_service_factory(tower_make_service))
.
§See Also
Source§impl<M, S> HttpServerBuilder<TowerMakeServiceWithAddrFactory<M>, S>where
M: MakeService<SocketAddr, IncomingRequest> + Send,
M::Future: Send,
M::Service: HttpService,
S: State,
S::ServiceFactory: IsUnset,
impl<M, S> HttpServerBuilder<TowerMakeServiceWithAddrFactory<M>, S>where
M: MakeService<SocketAddr, IncomingRequest> + Send,
M::Future: Send,
M::Service: HttpService,
S: State,
S::ServiceFactory: IsUnset,
Sourcepub fn tower_make_service_with_addr(
self,
tower_make_service: M,
) -> HttpServerBuilder<TowerMakeServiceWithAddrFactory<M>, SetServiceFactory<S>>
Available on crate feature tower
only.
pub fn tower_make_service_with_addr( self, tower_make_service: M, ) -> HttpServerBuilder<TowerMakeServiceWithAddrFactory<M>, SetServiceFactory<S>>
tower
only.Same as calling service_factory(tower_make_service_with_addr_factory(tower_make_service))
.
§See Also
Source§impl<M, T, S> HttpServerBuilder<TowerMakeServiceFactory<M, T>, S>where
M: MakeService<T, IncomingRequest> + Send,
M::Future: Send,
M::Service: HttpService,
T: Clone + Send,
S: State,
S::ServiceFactory: IsUnset,
impl<M, T, S> HttpServerBuilder<TowerMakeServiceFactory<M, T>, S>where
M: MakeService<T, IncomingRequest> + Send,
M::Future: Send,
M::Service: HttpService,
T: Clone + Send,
S: State,
S::ServiceFactory: IsUnset,
Sourcepub fn custom_tower_make_service_factory(
self,
tower_make_service: M,
target: T,
) -> HttpServerBuilder<TowerMakeServiceFactory<M, T>, SetServiceFactory<S>>
Available on crate feature tower
only.
pub fn custom_tower_make_service_factory( self, tower_make_service: M, target: T, ) -> HttpServerBuilder<TowerMakeServiceFactory<M, T>, SetServiceFactory<S>>
tower
only.Same as calling service_factory(custom_tower_make_service_factory(tower_make_service, target))
.
§See Also
Auto Trait Implementations§
impl<F, S> Freeze for HttpServerBuilder<F, S>where
F: Freeze,
impl<F, S = Empty> !RefUnwindSafe for HttpServerBuilder<F, S>
impl<F, S> Send for HttpServerBuilder<F, S>where
F: Send,
impl<F, S> Sync for HttpServerBuilder<F, S>where
F: Sync,
impl<F, S> Unpin for HttpServerBuilder<F, S>where
F: Unpin,
impl<F, S = Empty> !UnwindSafe for HttpServerBuilder<F, S>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more