URL パラメーター内で渡される URL をエンコードするために使用できる .NET エンコード方法はありますか?
たとえば、私が持っているとします:
url_of_interest = "http://asdf.asdf/asdf.htm"
そして、Web アプリケーションにアップロードするときに、これを 1 つの URL フォーム パラメータとして含めたいと考えています。
http://mywebservice/upload?url=<<encoded URL here>>
MSAntiXSSライブラリを使用する必要があります
AntiXss.UrlEncodeメソッド
AntiXSSライブラリは、次の場所からダウンロードできます。
UrlEncode() メソッドを使用して、クエリ文字列値を含む URL 全体をエンコードできます。空白や句読点などの文字が HTTP ストリームで渡されると、受信側で誤って解釈される可能性があります。URL エンコーディングは、URL で許可されていない文字を同等の文字エンティティに変換します。URL デコードはエンコーディングを逆にします。たとえば、URL で送信されるテキストのブロックに埋め込まれた場合、文字 < および > は %3c および %3e としてエンコードされます。
System.Web は最新の OWIN ベースのアプリケーションから廃止されているため、代替ソリューションは次のようにするHttpUtility.UrlEncode
必要があります。WebUtility.UrlEncode