Struct actix_web::dev::ConnectionInfo [−][src]
pub struct ConnectionInfo { /* fields omitted */ }
Expand description
HTTP connection information.
ConnectionInfo
implements FromRequest
and can be extracted in handlers.
Examples
use actix_web::dev::ConnectionInfo;
async fn handler(conn: ConnectionInfo) -> impl Responder {
match conn.host() {
"actix.rs" => HttpResponse::Ok().body("Welcome!"),
"admin.actix.rs" => HttpResponse::Ok().body("Admin portal."),
_ => HttpResponse::NotFound().finish()
}
}
Implementation Notes
Parses Forwarded
header information according to RFC 7239 but does not try to
interpret the values for each property. As such, the getter methods on ConnectionInfo
return
strings instead of IP addresses or other types to acknowledge that they may be
obfuscated or unknown.
If the older, related headers are also present (eg. X-Forwarded-For
), then Forwarded
is preferred.
Implementations
Real IP (remote address) of client that initiated request.
The address is resolved through the following, in order:
Forwarded
headerX-Forwarded-For
header- peer address of opened socket (same as
remote_addr
)
Security
Do not use this function for security purposes unless you can be sure that the Forwarded
and X-Forwarded-For
headers cannot be spoofed by the client. If you are running without a
proxy then obtaining the peer address would be more appropriate.
Returns serialized IP address of the peer connection.
See HttpRequest::peer_addr
for more details.
Hostname of the request.
Hostname is resolved through the following, in order:
Forwarded
headerX-Forwarded-Host
headerHost
header- request target / URI
- configured server hostname
Trait Implementations
Returns the “default value” for a type. Read more
type Error = Infallible
type Error = Infallible
The associated error which can be returned.
Create a Self from request parts asynchronously.
Create a Self from request head asynchronously. Read more
Auto Trait Implementations
impl RefUnwindSafe for ConnectionInfo
impl Send for ConnectionInfo
impl Sync for ConnectionInfo
impl Unpin for ConnectionInfo
impl UnwindSafe for ConnectionInfo
Blanket Implementations
Mutably borrows from an owned value. Read more
pub fn vzip(self) -> V
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more