惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Help Net Security
Help Net Security
G
Google Developers Blog
雷峰网
雷峰网
WordPress大学
WordPress大学
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Engineering at Meta
Engineering at Meta
Security Latest
Security Latest
T
Threat Research - Cisco Blogs
AWS News Blog
AWS News Blog
F
Full Disclosure
C
Cybersecurity and Infrastructure Security Agency CISA
T
The Exploit Database - CXSecurity.com
J
Java Code Geeks
U
Unit 42
C
Cyber Attacks, Cyber Crime and Cyber Security
V
V2EX
C
Cisco Blogs
博客园 - 司徒正美
Project Zero
Project Zero
L
LINUX DO - 热门话题
阮一峰的网络日志
阮一峰的网络日志
Blog — PlanetScale
Blog — PlanetScale
Scott Helme
Scott Helme
A
About on SuperTechFans
Hugging Face - Blog
Hugging Face - Blog
S
Securelist
小众软件
小众软件
aimingoo的专栏
aimingoo的专栏
S
Schneier on Security
G
GRAHAM CLULEY
酷 壳 – CoolShell
酷 壳 – CoolShell
Cyberwarzone
Cyberwarzone
MongoDB | Blog
MongoDB | Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 叶小钗
T
Threatpost
Recorded Future
Recorded Future
C
CXSECURITY Database RSS Feed - CXSecurity.com
宝玉的分享
宝玉的分享
N
News and Events Feed by Topic
人人都是产品经理
人人都是产品经理
The Register - Security
The Register - Security
S
Security Archives - TechRepublic
博客园 - Franky
N
News | PayPal Newsroom
Simon Willison's Weblog
Simon Willison's Weblog
S
SegmentFault 最新的问题
W
WeLiveSecurity
A
Arctic Wolf
B
Blog

博客园 - 偶然微笑

asp.net 登陆 asp.net获取URL和IP地址 ASP.NET获取IP与MAC地址的方法 ASP.NET获取IP的6种方法 - 偶然微笑 - 博客园 MS SQL Server 2005 通用分页存储过程 又快又简单的sql2005分页存储过程 SQL SERVER 2005分页存储过程 C#区别和认识四个判等函数 C#中数字日期转中文日期 C#算法(一)选择排序 创建基于ASP.NET的SMTP邮件服务 C#如何取硬件标志 使用HttpWebRequest提交ASP.NET表单并保持Session和Cookie 提取HTML代码中文字的C#函数 Asp.Net输出数据到EXCEL中 把文字变成图片的小程序 ASP.NET URL Rewrite. URL重写 asp.net采集函数(采集、分析、替换、入库) - 偶然微笑 .net 无限级分类
url传递中文的解决方案总结
偶然微笑 · 2008-09-20 · via 博客园 - 偶然微笑

1.设置web.config文件。
<system.web> 
 
<globalization requestEncoding="gb2312" responseEncoding="gb2312" culture="zh-CN" fileEncoding="gb2312" /> 
 
</system.web> 
 
或者:
aspx文件中:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">2.传递中文之前,将要传递的中文参数进行编码,在接收时再进行解码。 
>> 进行传递 
string Name = "中文参数"
Response.Redirect(
"B.aspx?Name="+Server.UrlEncode(Name)); >> 进行接收 
string Name = Request.QueryString["Name"]; 
Response.Write(Server.UrlDecode(Name)); 
或者:
 
NavigateURL
='<%# "WebForm2.aspx?Singer=" + HttpUtility.UrlEncode("中国人", System.Text.Encoding.GetEncoding("GB2312")) %>'3.如果是从 .HTML 文件向 .Aspx 文件进行传递中文参数的话(即不从后台用 Redirect()方法进行 Url 转换)。一样要将传递的中文参数进行编码,在接收时再进行解码。 
>> 进行传递 
<script language="JavaScript"> 
function GoUrl() 

var Name 
= "中文参数"
location.href 
= "B.aspx?Name="+escape(Name); 

</script> 
<body onclick="GoUrl()"> 
>> 进行接收 
string Name = Request.QueryString["Name"]; 
Response.Write(Server.UrlDecode(Name)); 

一般来说。设置web.config文件就可以了。但是如果你用 JavaScript 调用 webservice 方法的话(往webservice里面传递中文参数)。设置 web.config 文件好象无效。 

————————————————————
在html中实现编解码:

<script language="javascript">
function openUrl(src)
{
  var strUrl
=escape(src);
  window.open(strUrl);
}
 

function change_url(src)
{
 document.location.href

=escape(src);
}
 
</script>  
 
在新窗口保存
<a href='javascript:openUrl("css/合同.doc");' >交合同</a>
 
 
当前位置保存,无闪烁。
<a href="#" onclick=BLOCKED SCRIPTchange_url("css/合同.doc")>合同</a>
 
注意:路径中的斜线是:“
/”,而不是“\”,否则也不行啊。
 
 
 
 
----------------------------------------
前一阵遇到在做.net Web开发时,碰到一个很奇怪的问题,就是Url中,如果将中文字符作为参数值传递时,QueryString得到的值可能会出错。简单的说,比如下面这个Url:
UrlParmTest.aspx
?parm1=中国&parm2=中国人
在Request.QueryString时,parm1和parm2得到都是
"中国",显然出现了问题,可是在某些情况下却是正常的。

如果请求不是直接通过url,而使用response.redirect在服务器端操作,没有遇到过类似的问题。

当时我想中文是双字节编码,可能传递的时候就是有不确定性,还是用英文好。

可是为什么在server端redirect就是正常的,问题在哪里呢?

昨天我询问在gtec的同学,才大概明白了一些:
如果在.cs文件中设置中文参数,请在中文参数外使用Server.UrlEncode(

"中文")对中文进行Encode
如果在.aspx文件中设置,请使用
<%=Server.UrlEncode("中文")%>进行Encode
在QueryString时,不用再进行Decode,可以获得正常的中文字符串

下面是同学给出的一些解释:
UrlEncode把一些多字节字符转换成url里允许的单字节字符,本来浏览器就会自动做的,但是目前确实存在一些问题,所以自己再Encode一下,在接受端会自动对Url进行Decode。

我想Response.Redirect可能可以确保作Encode的工作,所以没有问题。