>백엔드 개발 >C++ >C#에서 URL 매개변수를 완전히 디코딩하는 방법은 무엇입니까?

C#에서 URL 매개변수를 완전히 디코딩하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2025-01-06 15:19:41562검색

How to Fully Decode URL Parameters in C#?

C#에서 URL 매개변수 디코딩

HTTP 요청에는 보안상의 이유로 인코딩될 수 있는 URL 매개변수가 포함되는 경우가 많습니다. C#에서 이러한 매개변수에 액세스하려면 먼저 이를 디코딩해야 합니다.

방법 1: Uri.UnescapeDataString

string encodedUrl = "my.aspx?val=%2Fxyz2F";
string decodedUrl = Uri.UnescapeDataString(encodedUrl);

방법 2: HttpUtility.UrlDecode

string decodedUrl = HttpUtility.UrlDecode(encodedUrl);

두 메소드 모두 기본 URL 디코딩을 수행하지만 단일 호출로는 충분하지 않을 수 있습니다. URL을 완전히 디코딩하려면 while 루프를 사용하여 더 이상 변경 사항이 발생하지 않을 때까지 반복적으로 디코딩하면 됩니다.

static string DecodeUrlString(string url) {
    string newUrl;
    while ((newUrl = Uri.UnescapeDataString(url)) != url)
        url = newUrl;
    return newUrl;
}

이 방법을 사용하면 제공된 URL이 "my.aspx?val=로 완전히 디코딩됩니다. /xyz2F".

위 내용은 C#에서 URL 매개변수를 완전히 디코딩하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.