【发布时间】:2011-03-03 19:20:59
【问题描述】:
这是我在 stackoverlow 上的第一篇文章,我在其他任何文章中都找不到解决方案,所以就这样吧:
我有一个在 url 中发送两个查询字符串的网页:
example.aspx?name=<%=name%>&sku=<%=sku%>
然后我使用Request.QueryString["name"]; 和Request.QueryString["sku"]; 收集值
当我查看发送查询字符串的页面源上的 url 时,一切看起来都很好,但如果“名称”包含正斜杠 (/),当我检索时,它会以某种方式被附加到“sku”的末尾查询字符串的值。我试图用 %2F 替换 / 但这不起作用。如果“名称”查询字符串没有斜杠,那么一切看起来都是正确的。
有什么想法吗?
编辑:我最终不得不双重编码(server.urlencode)和双重解码才能正常工作。感谢您的所有帮助!
【问题讨论】:
-
@Zack - 应该使用其他人提到的使用 Server.UrlEncode 修复查询字符串。然而,还有一些事情是错误的。问题的根源是如果
name值有一个正斜杠(/),那么斜杠将被添加到sku值。您需要查看如何设置name和sku查询字符串参数,以了解为什么将斜杠添加到sku。