File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -10,20 +10,19 @@ pub fn routers_list() -> Vec<(&'static str, MethodRouter)> {
1010}
1111
1212pub fn get_client_ip ( headers : & HeaderMap ) -> Option < IpAddr > {
13- // 1) X-Forwarded-For → first IP
14- if let Some ( val) = headers. get ( "x-forwarded-for" ) . and_then ( |v| v. to_str ( ) . ok ( ) ) {
15- if let Some ( first) = val. split ( ',' ) . next ( ) {
16- if let Ok ( ip) = first. trim ( ) . parse :: < IpAddr > ( ) {
17- return Some ( ip) ;
18- }
19- }
13+ // X-Forwarded-For: take the first IP
14+ if let Some ( val) = headers. get ( "x-forwarded-for" ) . and_then ( |v| v. to_str ( ) . ok ( ) )
15+ && let Some ( first) = val. split ( ',' ) . next ( )
16+ && let Ok ( ip) = first. trim ( ) . parse :: < IpAddr > ( )
17+ {
18+ return Some ( ip) ;
2019 }
2120
22- // 2) X-Real-IP
23- if let Some ( val) = headers. get ( "x-real-ip" ) . and_then ( |v| v. to_str ( ) . ok ( ) ) {
24- if let Ok ( ip) = val. trim ( ) . parse :: < IpAddr > ( ) {
25- return Some ( ip ) ;
26- }
21+ // X-Real-IP
22+ if let Some ( val) = headers. get ( "x-real-ip" ) . and_then ( |v| v. to_str ( ) . ok ( ) )
23+ && let Ok ( ip) = val. trim ( ) . parse :: < IpAddr > ( )
24+ {
25+ return Some ( ip ) ;
2726 }
2827
2928 None
You can’t perform that action at this time.
0 commit comments