본문 바로가기

Asp.net (C#.net)

asp.net(c#)에서 현재 페이지의 url을 가져 오는 방법

Request.Url 을 이용하시면 url 정보를 가져올수 있습니다.

사용 방법에 따라서 가져오는 데이터가 조금 다릅니다.


우선 사용방법입니다.



Controller 에서 사용하실때



Request.Url.Host : 도메인명

Request.Url.Authority : 도메인명 + 포트번호

Request.Url.Port : 포트번호

Request.Url.AbsolutePath : 도메인명과 포트 그리고 쿼리스트링값이 제외된 전체 주소

Request.ApplicationPath : 현재 응용 프로그램의 가상 경로 값

Request.Url.AbsoluteUri : 도메인명과 포트 그리고 쿼리스트링값이 포함된 전체 주소

Request.Url.PathAndQuery : 도메인명과 포트번호가 제외되고 쿼리스트링이 포함된 주소



View 에서 사용하실때



HttpContext.Current.Request.Url.Host : 도메인명

HttpContext.Current.Request.Url.Authority : 도메인명 + 포트번호

HttpContext.Current.Request.Url.Port : 포트번호

HttpContext.Current.Request.Url.AbsolutePath : 도메인명과 포트 그리고 쿼리스트링값이 제외된 전체 주소

HttpContext.Current.Request.ApplicationPath : 현재 응용 프로그램의 가상 경로 값

HttpContext.Current.Request.Url.AbsoluteUri : 도메인명과 포트 그리고 쿼리스트링값이 포함된 전체 주소

HttpContext.Current.Request.Url.PathAndQuery : 도메인명과 포트번호가 제외되고 쿼리스트링이 포함된 주소



어디서 사용하시던지 사용법은 비슷하시고

결과 값은 동일합니다.


위의 예문을 돌렸을때 나오는 결과 값을 보겠습니다.

결과

(http://abcd.com:777/Board/Index?SchType=Subject&SchTxt=Text <- 실제 주소가 이와 같을 때)



Host - abcd.com

Authority - abcd.com:777

Port - 777

AbsolutePath - /Board/Index

ApplicationPath - /

AbsoluteUri - http://abcd.com:777/Board/Index?SchType=Subject&SchTxt=Text

PathAndQuery - /Board/Index?SchType=Subject&SchTxt=Text



끝!