Struct actix_web::web::ServiceConfig
source · pub struct ServiceConfig { /* private fields */ }
Expand description
Enables parts of app configuration to be declared separately from the app itself. Helpful for modularizing large applications.
Merge a ServiceConfig
into an app using App::configure
. Scope and
resources services have similar methods.
use actix_web::{web, App, HttpResponse};
// this function could be located in different module
fn config(cfg: &mut web::ServiceConfig) {
cfg.service(web::resource("/test")
.route(web::get().to(|| HttpResponse::Ok()))
.route(web::head().to(|| HttpResponse::MethodNotAllowed()))
);
}
// merge `/test` routes from config function to App
App::new().configure(config);
Implementations§
source§impl ServiceConfig
impl ServiceConfig
sourcepub fn data<U: 'static>(&mut self, data: U) -> &mut Self
👎Deprecated since 4.0.0: Use .app_data(Data::new(val))
instead.
pub fn data<U: 'static>(&mut self, data: U) -> &mut Self
.app_data(Data::new(val))
instead.Add shared app data item.
Counterpart to App::data()
.
sourcepub fn app_data<U: 'static>(&mut self, ext: U) -> &mut Self
pub fn app_data<U: 'static>(&mut self, ext: U) -> &mut Self
Add arbitrary app data item.
Counterpart to App::app_data()
.
sourcepub fn default_service<F, U>(&mut self, f: F) -> &mut Selfwhere
F: IntoServiceFactory<U, ServiceRequest>,
U: ServiceFactory<ServiceRequest, Config = (), Response = ServiceResponse, Error = Error> + 'static,
U::InitError: Debug,
pub fn default_service<F, U>(&mut self, f: F) -> &mut Selfwhere F: IntoServiceFactory<U, ServiceRequest>, U: ServiceFactory<ServiceRequest, Config = (), Response = ServiceResponse, Error = Error> + 'static, U::InitError: Debug,
Default service to be used if no matching resource could be found.
Counterpart to App::default_service()
.
sourcepub fn configure<F>(&mut self, f: F) -> &mut Selfwhere
F: FnOnce(&mut ServiceConfig),
pub fn configure<F>(&mut self, f: F) -> &mut Selfwhere F: FnOnce(&mut ServiceConfig),
Run external configuration as part of the application building process
Counterpart to App::configure()
that allows for easy nesting.
sourcepub fn route(&mut self, path: &str, route: Route) -> &mut Self
pub fn route(&mut self, path: &str, route: Route) -> &mut Self
Configure route for a specific path.
Counterpart to App::route()
.
sourcepub fn service<F>(&mut self, factory: F) -> &mut Selfwhere
F: HttpServiceFactory + 'static,
pub fn service<F>(&mut self, factory: F) -> &mut Selfwhere F: HttpServiceFactory + 'static,
Register HTTP service factory.
Counterpart to App::service()
.
sourcepub fn external_resource<N, U>(&mut self, name: N, url: U) -> &mut Selfwhere
N: AsRef<str>,
U: AsRef<str>,
pub fn external_resource<N, U>(&mut self, name: N, url: U) -> &mut Selfwhere N: AsRef<str>, U: AsRef<str>,
Register an external resource.
External resources are useful for URL generation purposes only and are never considered for
matching at request time. Calls to HttpRequest::url_for()
will work as expected.
Counterpart to App::external_resource()
.