非常急,在线等,关于Request.QueryString["url"]的问题

qq948641731 2009-03-12 12:39:36
地址为login.aspx?url=Member/Order.aspx?MeId=0&MeTyId=0&Flat=1
在后台通过

string returnUrl = "";
if (Request.QueryString["url"] != null)
{
returnUrl = Request.QueryString["url"];
}

这样returnUrl 获取到的值为Member/Order.aspx?MeId=0;但是把&MeTyId=0&Flat=1
给掉了,我要怎么样才可以获取完整的Member/Order.aspx?MeId=0&MeTyId=0&Flat=1
...全文
187 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
baihe888888 2009-03-12
  • 打赏
  • 举报
回复
我也同意楼上的,不过我记得replace()是javascript的语法!!!
Martin-月影 2009-03-12
  • 打赏
  • 举报
回复
UrlEncode
踏雪听雨 2009-03-12
  • 打赏
  • 举报
回复
同意楼上,编码,解码就OK了
wujinjian2008n 2009-03-12
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wujinjian2008n 的回复:]
Url中是根据这个&符号去获得参数值,所以像你这样写是取不到的。

把这个&符号,用别的符号代替,例如‘*’

returnUrl = Request.QueryString["url"];
returnUrl.Replace("*","&"); 这样不就行了吗。
[/Quote]

发太快了,最后一句代码发错了。忘了赋值
应该这样写:
returnUrl=returnUrl.Replace("*","&");
CutBug 2009-03-12
  • 打赏
  • 举报
回复
传的时候这样传
url = "login.aspx?url="+HttpUtility.UrlEncode("Member/Order.aspx?MeId=0&MeTyId=0&Flat=1");


获得这样获得
string returnUrl = "";
if (Request.QueryString["url"] != null)
{
returnUrl = HttpUtility.UrlDecode(Request.QueryString["url"]);
}


wujinjian2008n 2009-03-12
  • 打赏
  • 举报
回复
Url中是根据这个&符号去获得参数值,所以像你这样写是取不到的。

把这个&符号,用别的符号代替,例如‘*’

returnUrl = Request.QueryString["url"];
returnUrl.Replace("*","&"); 这样不就行了吗。
jinjazz 2009-03-12
  • 打赏
  • 举报
回复
传递之前用UrlEncode编码一下
wujinjian2008n 2009-03-12
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 baihe888888 的回复:]
我也同意楼上的,不过我记得replace()是javascript的语法!!!
[/Quote]

C# java 都有
Lisen_1987 2009-03-12
  • 打赏
  • 举报
回复
up
wangrumeng 2009-03-12
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 CutBug 的回复:]
传的时候这样传

C# codeurl = "login.aspx?url="+HttpUtility.UrlEncode("Member/Order.aspx?MeId=0&MeTyId=0&Flat=1");



获得这样获得

C# codestring returnUrl = "";
if (Request.QueryString["url"] != null)
{
returnUrl = HttpUtility.UrlDecode(Request.QueryString["url"]);
}
[/Quote]

同意
风骑士之怒 2009-03-12
  • 打赏
  • 举报
回复
...
总哈哈 2009-03-12
  • 打赏
  • 举报
回复
案3楼的做就可以了,urlencode和decode主要是针对url的。其他的自己google一下呢!
浮生若梦丶 2009-03-12
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wujinjian2008n 的回复:]
Url中是根据这个&符号去获得参数值,所以像你这样写是取不到的。

把这个&符号,用别的符号代替,例如‘*’

returnUrl = Request.QueryString["url"];
returnUrl.Replace("*","&"); 这样不就行了吗。
[/Quote]
up
黑哥 2009-03-12
  • 打赏
  • 举报
回复
3楼正解


回帖是一种美德!每天回帖即可获得 10 分可用分!
ZZJ_4Ever 2009-03-12
  • 打赏
  • 举报
回复
Server.UrlDecode; url编码
Server.UrlEncode; url解码
Server.HtmlDecode; html解码
Server.HtmlEncode; html编码
encodeURI, url编码
decodeURI url解码
escape html解码
unescape html编码
url编码的原因是因为在url中可能会出现中文或特殊字符的想象,html编码的原因是为了不跟html元素冲突
jinjazz 2009-03-12
  • 打赏
  • 举报
回复
比如有关你的这个问题的解释

http://blog.sqee.cn/1/viewspace-1527
jinjazz 2009-03-12
  • 打赏
  • 举报
回复
这些问题google一下都有了
qq948641731 2009-03-12
  • 打赏
  • 举报
回复
但是我一直区分不了几个编码的意思,网上查了好多都没有答案
javascript中的编码方法
encodeURI,
decodeURI
escape
unescape

与asp.net中下列的编码

Server.UrlDecode;
Server.UrlEncode;
Server.HtmlDecode;
Server.HtmlEncode;
谁给详细解释下,分全给了!

62,268

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧