- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我在 stackoverlow 上的第一篇文章,我在任何其他文章中都找不到解决这个问题的方法,所以在这里:
我有一个网页在 url 中发送两个查询字符串:
example.aspx?name=<%=name%>&sku=<%=sku%>
然后我使用 Request.QueryString["name"];
和 Request.QueryString["sku"];
收集值
当我查看发送查询字符串的页面源上的 url 时,一切看起来都很好,但如果“名称”包含正斜杠 (/),当我检索时,它会以某种方式附加到“sku”的末尾查询字符串的值。我尝试用 %2F 替换/但这不起作用。如果“name”查询字符串没有斜杠,一切看起来都是正确的。
有什么想法吗?
编辑:我最终不得不双重编码 (server.urlencode) 和双重解码才能正常工作。感谢您的帮助!
最佳答案
实际上,您应该使用 HttpServerUtility.UrlEncode 对 URL 的值进行编码方法:
example.aspx?name=<%=Server.UrlEncode(name)%>&sku=<%=Server.UrlEncode(sku)%>
URL encoding ensures that all browsers will correctly transmit text in URL strings. Characters such as a question mark (?), ampersand (&), slash mark (/), and spaces might be truncated or corrupted by some browsers. As a result, these characters must be encoded in tags or in query strings where the strings can be re-sent by a browser in a request string.
编辑:
让我们用您提供的值来检查一下:name = Bellagio™ 16 1/2"高下桥户外壁灯
,sku = 46910
:首先我创建了一个包含 2 个属性的页面:
public string Name
{
get
{
return "Bellagio™ 16 1/2\" High Downbridge Outdoor Wall Light";
}
}
public string Sku
{
get
{
return "46910";
}
}
然后在页面中添加链接定义:
<a href='1.aspx?name=<%=Server.UrlEncode(Name)%>&sku=<%=Server.UrlEncode(Sku)%>'>
this is a link
</a>
然后抓取这些值(先点击链接):
protected void Page_Load(object sender, EventArgs e)
{
var name = Request.QueryString["name"];
var sku = Request.QueryString["sku"];
}
这些值与您提供的值完全相同:Bellagio™ 16 1/2\"High Downbridge Outdoor Wall Light
和 46910
。
不幸的是,我无法重现您在第一条评论中发布的错误 URL:LifeSizePDF.aspx?productname=Bellagio&%238482%3b+16+1%2f2"%3b+High+Downbridge +Outdoor+Wall+Light&shortsku=46910%2f
关于c# - 使用Request.QueryString,斜杠(/)在第一个querystring中存在时添加到最后一个querystring,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5185428/
我喜欢使用 Python 的 SimpleHTTPServer 来本地开发各种需要通过 Ajax 调用等方式加载资源的 Web 应用程序。 当我在我的 URL 中使用查询字符串时,服务器总是重定向到相
我们正在使用 Swagger/Swashbuckle 生成 OpenApi 定义。然后将此定义导入到 Azure API 管理中。 我们在 get 请求中有一些我们标记为必需的查询字符串参数。我们的验
我有一个带有查询字符串的页面请求,例如http://www.xyz.net/Orders.aspx?OrderID=1。该页面显示在浏览器中。现在页面上有一个 asp:LinkButton ,它应
我们有以下重写规则: RewriteRule ^([A-Za-z0-9\_]+)$ index.php?rewrite=$1 [L,QSA] 我们想知道是否有一种方法可以让 ?rewrite=$1
我们有以下重写规则: RewriteRule ^([A-Za-z0-9\_]+)$ index.php?rewrite=$1 [L,QSA] 我们想知道是否有一种方法可以让 ?rewrite=$1
我需要http://profiles.mysite.com/Me显示什么http://mysite.com/profile.php?user=Me会显示。 “我”根据用户名而变化。它可以包含空格并且不
我正在努力实现以下条件 orgId =“z2store”,类型 =“web”,日期时间 =“12:17:08” 下面是我写的查询 GET /sample/_search { "bool" : {
我有一个网址: http://mywebsite.com/Account/?Number=25191108&Name=Something&Remote=False 我想重定向到: http://ano
是否可以在回发时附加到查询字符串?如果是,您到底是怎么做到的? 谢谢! 最佳答案 据我所知不是。您对 ASP.NET 的回发没有太多控制。对于另一种类型的应用程序,您可以发布到另一个页面。我知道在 a
我在一个支付平台上工作,为了响应支付,一个简单的 GET 调用,在查询字符串中有一些参数,是对我的听众的: http://localhost/mytest/listener?TIMECREATED=0
方法一: 在 JavaScript 中,可以使用 URLSearchParams 对象来处理 URL 中的查询字符串. 序列化(将 JavaScript 对象转换为查询字符串)可以使用 URLSe
一,开篇分析 这篇文章把这三个模块拿来一起说,原因是它们各自的篇幅都不是很长,其次是它们之间存在着依赖关系,所以依次介绍并且实例分析。废话不多说了,请看下面文档: (1),"Url模块
我想将查询字符串附加到页面内的所有动态链接上 - 以修复旧版本中的错误 - 这可能吗? 有什么想法吗? 最佳答案 类似这样的吗? var querystring = 'myquerystringtoa
我使用以下代码从 LogIn.aspx 获取 LogedInUser 并将其发送到 Chat.aspx 然后将其发送到 FrmForAjaxCalls 从 Db 返回数据并将其填充到 div 上,但在
我今天在 Web 应用程序中重构一些代码,并在所有网页的基类中遇到了类似的内容: if (Request.QueryString["IgnoreValidation"] != null) {
我想创建一个联系人页面, 我有以下代码: #:Name# #:Surname# 还有两个值(contactNumber 和 Email) 在第一个 View 中,我只显示名称,我想在单击时
大家早上好, 我有一个系统,需要发送一封电子邮件,其中包含我在 JS 中的一些变量。代码一开始对我来说看起来不错,但是 Request.QueryString 没有返回任何内容。我正在尝试使用 Req
在 aspx 页面中我有 anchor 标记。我的 URL 已经有我想重用的 Id 参数。要求是将用户重定向到具有当前 url id 的提及页面,例如 "~/Dir/Home?Id=" & Reque
我使用 request.querystring 只是为了访问我从一个页面传递到另一个页面的参数。 它给了我一个错误。 Non-invocable member 'System.Web.HttpRequ
此问题与上一个问题相关 Passing Variable from page to page using ASP.NET (C#) without using QueryString 我的情况的不同之
我是一名优秀的程序员,十分优秀!