我有一个HttpHandler,只需使用context.Request [“param1”]从请求URL读取参数。问题是我的网站符合xHTML标准,因此所有链接都是编码的。所以我的格式为:http://mydomain.com/?param1=a¶m2=b。
问题是无法识别Request [“param2”]。相反,它认为第二个参数是“amp; param2”。它没有意识到&代表&在URL中。我如何告诉“请求”链接应符合xHTML?
答案 0 :(得分:4)
您需要UrlEncode您的链接,而不是HTMLEncode。
第一个给出& = %26
,而后者(你正在使用的那个)给出& = &
,并且处理程序通过第一个&在&
答案 1 :(得分:2)
您想使用Request.QueryString
,而不是请求。
例如:
context.Request.QueryString["param1"]
context.Request.QueryString["param2"]
答案 2 :(得分:0)
你的网址中用于分隔你的GET(即查询字符串/请求)参数的&符号仍然需要是'&'。如果您在实际的XHTML中显示&符号,那么您将使用XHTML编码。 XHTML编码&符号用作URL中的参数分隔符将不会被识别为。