我有接受「URL」查詢字符串,其值可以是一個未編碼的URL鍵下面的asp.net頁面:如何讀取包含未編碼數據的查詢字符串?
http://localhost:4104/WebSiteForTest/TinyUrl.aspx?url=http://www.google.co.uk/#hl=en&q=life&oq=life&aq=f&aqi=g-s1g9&aql=&gs_sm=3&gs_upl=2803373l2803701l2l2803826l4l4l0l0l0l0l188l453l0.3l3l0&bav=on.2,or.r_gc.r_pw.r_cp.,cf.osb&fp=94681dc4659502d1&biw=1680&bih=883
從這個頁面
現在,怎麼會是這樣可以讀取文本在「.aspx?」之後?
我檢查了Request.Url.AbsoluteUri財產,它只是表明
"http://localhost:4104/WebSiteForTest/TinyUrl.aspx?url=http://www.google.co.uk/"
我還檢查與使用的Request.QueryString下面的代碼:
private void getQueryString()
{
var sb = new StringBuilder();
var queryStringCount = Request.QueryString.Keys.Count;
for (int keyIndex = 0; keyIndex < queryStringCount; keyIndex++)
{
sb.Append(Request.QueryString.Keys[keyIndex]).Append("=").Append(Request.QueryString[keyIndex]);
if (keyIndex != (queryStringCount - 1))
{
sb.Append("&");
}
}
}
但是,在代碼「 #「不出現在任何查詢字符串中。
如何在「.aspx?」之後讀取文本?
如果你說這是不可能的,谷歌如何使用「#」在他們的網址,然後當你搜索的東西?
感謝,
可以查詢字符串參數包含未編碼的數據? – Jodrell 2012-02-16 13:54:05
'str.Split( 「?」,2)[1]' – 2012-02-16 13:54:11
@Jodrell,它可以例如http://www.google.co.uk/#hl=en&site=&q=life&oq=life&aq=f&aqi=g-s1g9&aql=&gs_sm=3&gs_upl=3317l3630l0l3755l4l4l0l0l0l0l125l391l3.1l4l0&bav=on.2,or.r_gc.r_pw.r_cp, cf.osb&計劃生育= 94681dc4659502d1&BIW = 1680&波黑= 849 – 2012-02-16 14:07:34