Request.RawUrl 대 Request.Url
ASP.NET Request.RawUrl
과 의 차이점은 무엇입니까 Request.Url
?
MSDN에서 :
원시 URL은 도메인 정보 다음에 나오는 URL의 일부로 정의됩니다. URL 문자열
http://www.contoso.com/articles/recent.aspx
에서 원시 URL은/articles/recent.aspx
입니다.
즉, rawurl
서버가 어떤 주소를 통해 호출 되었는지 (예를 들어 http://yourserver/
또는 http://yourserver.yourdomain.com/
여러 인터페이스가있는 경우) 사용할 수 있으며 신경 쓸 필요가 없습니다 .
그러나 개체 의 URL
속성은 서버 이름도 포함 하는 HTTPRequest
개체를 반환합니다 System.URI
.
예를 들어 URL 재 작성을 사용하여 IIS 또는 파일 시스템 주변에 어떤 조작이 발생하기 전에 IIS에서 실제로 수신 한 원시 URL을 표시한다고 언급 한 사람은 없습니다.
/error
MVC 앱 에서 오류 페이지 를 설정했고 해당 위치에서 오류 페이지를 사용자 지정 오류 페이지로 대체하도록 webconfig를 설정 했다고 가정 해 보겠습니다 . 이 방법으로에서 오류가 발생 /faultypage
하면 사용자는 페이지를 가져 /error
오지만 브라우저의 주소 표시 줄에있는 URL은 여전히 www.mysite.com/faultypage
전송 또는 재 작성 이라고 표시됩니다 .
이제 오류 컨트롤러는 엿봄을하는 경우 Request.Url
, 그것은 같은 것 www.mysite.com/error
하고 Request.RawUrl
(더 유용?) 말을 /faultypage
사용자의 실제하지 요청, 현재 실행되고있는 페이지이다.
Request.RawUrl
매우 유사하다 Request.Url.PathAndQuery
를 제외시켰다 그 Request.Url.PathAndQuery
포함 기본 문서 반면 하나가 사용 된 경우 Request.RawUrl
하지 않습니다. 내 경험에 따르면 이것은 ASP.Net 4.0 이상에 해당 됩니다.
Request.RawUrl은 현재 URL에 대한 도메인 정보 다음의 모든 문자열을 반환합니다.
예 : Request.RawUrl 대 Request.Url
Request.RawUrl은 / questions / 2019735 / request-rawurl-vs-request-url이됩니다.
Request.Url은 Uri 개체, http://msdn.microsoft.com/en-us/library/system.uri_members.aspx를 반환합니다 .
HttpRequest.RawUrl 속성 문서 속성 값을 설명합니다 :
원시 URL은 도메인 정보 다음에 나오는 URL의 일부로 정의됩니다. URL 문자열
http://www.contoso.com/articles/recent.aspx
에서 원시 URL은/articles/recent.aspx
입니다. 원시 URL에는 쿼리 문자열이 포함됩니다 (있는 경우).
HttpRequest.Url 속성 문서 속성 값을 설명합니다 :
현재 요청의 URL이 포함 된 Uri 개체입니다.
속성에 대해서는 Uri 클래스 설명서 를 참조하십시오 .
참고 URL : https://stackoverflow.com/questions/2019735/request-rawurl-vs-request-url
'developer tip' 카테고리의 다른 글
자동 네임 스페이스 가져 오기 (0) | 2020.11.01 |
---|---|
인형을위한 표현 트리? (0) | 2020.11.01 |
Android에서 어댑터 / ListView를 새로 고치는 가장 좋은 방법 (0) | 2020.11.01 |
XElement 네임 스페이스 (방법?) (0) | 2020.11.01 |
FormData 인터페이스를 구현하지 않는 개체에서 'append'가 호출되었습니다. (0) | 2020.10.31 |