asp頁面和Asp.net頁面傳中文引數UrlEncode編碼以及接收解碼
阿新 • • 發佈:2019-01-24
在asp中加一個連結,指向asp.net網頁,但asp.net的網址是經過HttpUtility.UrlEncode轉換和HttpUtility.UrlDecode解碼的,而asp的server.urlencode卻和HttpUtility.UrlEncode的編碼方式不一樣,
舉例:asp.net用Get方式傳輸的URL為:"WebPage.asp?str="+HttpUtility.UrlEncode(str)
,解碼方式為HttpUtility.UrlDecode(Request.QueryString["str"].ToString().Trim())
asp的Get方式傳送為"webPage.aspx?str="+server.urlencode(str) 兩種編碼不統一
解決方案:在asp使用Get方式傳送"WebPage.aspx?str="+server.urlEncode( server.URLpathencode(str))
asp.net GET方式傳送引數:"WebPage.aspx?str="+ HttpUtility.UrlEncode( str,System.Text.Encoding.GetEncoding("gb2312"))
asp.net GET方式接收引數:str= HttpUtility.UrlDecode(Request.QueryString["str"].ToString().Trim(),System.Text.Encoding.GetEncoding("gb2312"))