2013-11-09 66 views
2

在ASP中有這個URL:ASP的Request.QueryString不HTML解碼 「&」 從URL查詢字符串

Request.QueryString["bar"]返回NULL

的URL是一個地圖區域的 「href」 鏈接,我已經分配了類似這樣:

PolygonHotSpot p = new PolygonHotSpot(); 
p.NavigateUrl = http://www.example.com?foo=1&bar=2 

ASP自動HTML編碼的HREF的URL,但它不是HTML在請求再次對其進行解碼,因此查詢STRI ng「bar」未找到。

現在我正在使用IIS URL Rewrite 2模塊。也許這個模塊導致了這個問題?我能做些什麼來解決它?我曾嘗試使用URL重寫規則,但無法確定我們如何或如果是正確的方式。

回答

0

這可能不是一個好主意,但是您可以使用Request.ServerVariables("QUERY_STRING")(或Request.ServerVariables [「QUERY_STRING」] - 您的標記表示ASP經典,但您的代碼看起來像C#?)以獲取整個事物並處理它你自己。

我認爲一定會有更深層的錯誤。鏈接可被編碼以發送到瀏覽器 - 瀏覽器在導航到鏈接之前完成解碼工作。您可以在測試腳本中使用簡單的<a href="/test?a=1&amp;b=2">進行演示 - 瀏覽器在/test?a=1&b=2處正確結束。使用多邊形圖像測試它會顯示相同的行爲。

如果你能告訴我什麼是你的圖像映射的實際HTML輸出,我可能會幫助更多。