2009-12-15 101 views
5

是否有一種.NET編碼方法可用於對要在URL參數中傳遞的URL進行編碼?對URL進行URL編碼

例如說我有:

url_of_interest = "http://asdf.asdf/asdf.htm"

,我想,當我做一個上傳到Web應用程序,包括這是一個(1)URL形式參數:

http://mywebservice/upload?url=<<encoded URL here>>

+0

注意,C#是一種編程語言。它沒有編碼方法。它是具有編碼方法的.NET Framework。 – 2009-12-15 04:31:43

回答

1

HttpUtility.UrlEncode

可以使用UrlEncode()方法對 進行編碼整個URL,包括 查詢字符串值。如果字符 (如空格和標點符號)在HTTP流中傳遞 ,則可能會在接收端 末端誤解爲 。 URL編碼將URL中不允許的字符 轉換爲 字符實體等效項;解碼反轉編碼的URL 。例如,對於 示例,當嵌入 要在URL中傳輸的文本塊中時, 字符<和>編碼爲%3c 和%3e。

2

HttpServerUtility.UrlEncode應該做的伎倆:

http://msdn.microsoft.com/en-us/library/zttxte6w.aspx

+0

我不得不投票給你,因爲你不能創建這個類的實例。 – ChaosPandion 2009-12-15 04:36:28

+2

爲什麼無法創建實例很重要?如果您在ASP.NET中運行,則會爲您提供一個實例。 – 2009-12-15 04:40:44

+0

他沒有指定他使用ASP.NET的任何地方。 – ChaosPandion 2009-12-15 04:42:15

0

由於System.Web程序正在從基於現代OWIN申請退役,替代解決方案HttpUtility.UrlEncode應該WebUtility.UrlEncode