호스트 대 Dnsafe 호스트
Request 개체에서 호스트를 제거해야 합니다.어떤 속성을 사용해야 하며 그 이유는 무엇입니까?
MSDN에서:
Uri.Dnsafe호스트 속성
DNS 확인에 적합한 URI의 이스케이프되지 않은 호스트 부분을 포함하는 문자열 또는 원래 이스케이프되지 않은 호스트 문자열(이미 확인에 적합한 경우).
대
URI.Host 속성
호스트 이름을 포함하는 문자열입니다.일반적으로 서버의 DNS 호스트 이름 또는 IP 주소입니다.
제 테스트는 ASP를 통해 진행되었습니다.NET 개발 서버.이 두 가지 모두 항상 반환됩니다.localhost127.0.0.1을 넣었을 때도 두 개가 모두 돌아옵니다.localhost.
계속해서 읽어보면,DnsSafeHost속성은 IPv6 주소를 처리하고 필요한 경우 유니코드를 ASCII로 변환합니다.IRI와 IDN도 설명할 수 있고, 제가 지금은 이런 것들에 신경을 안 쓰지만 그냥.DnsSafeHost안전할 재산?
결과 호스트 이름을 직접 DNS 서버로 보내려는 경우 DnsSafeHost를 URL에 적용합니다.DNS는 원래 ASCII 전용 프로토콜(및 ASCII의 하위 집합)이었습니다.현재 URL에서 DNS 서버로 직접 전송할 수 없는 URL의 호스트 부분에 있는 문자 시퀀스를 허용합니다.예는 다음과 같습니다.
ASCII가 아닌 도메인 이름, 영어가 아닌 도메인 이름.DnsSafeHost(선택 사항)는 RFC 3987 IRI를 사용하여 문자를 정규화하고 비 ASC로 변환합니다.II 문자에서 IDN, Punycode 인코딩.
앞으로 어떤 URL이 허용될지 누가 알겠습니까?이 애플리케이션은 URL에서 무엇이 정상인지에 대한 우리의 가정보다 오래 지속될 수 있습니다. DnsSafeHost는 여기에 어느 정도의 복원력을 추가합니다.
사용자에게 호스트 이름을 표시해야 하는 경우 대신 호스트 속성을 사용합니다.
언급URL : https://stackoverflow.com/questions/1224587/host-vs-dnssafehost
'codememo' 카테고리의 다른 글
| LINQ를 사용하여 문자열[]을 코드 한 줄에서 int[]로 변환 (0) | 2023.05.18 |
|---|---|
| X-Frame-옵션 여러 도메인에서 허용 (0) | 2023.05.18 |
| 를 사용하여 Windows에서 팝업 "토스터" 알림을 만듭니다.그물 (0) | 2023.05.13 |
| 이벤트에서 모든 이벤트 핸들러를 제거하는 방법 (0) | 2023.05.13 |
| 다양한 어레이 요소를 새 어레이로 복제하려면 어떻게 해야 합니까? (0) | 2023.05.13 |