ASP.NET状态管理之二(查询字苻串RequestQueryString)
2017-10-17 17:51
274 查看
例如:
http://www.cnblogs.com/aierong/admin/EditPosts.aspx?opt=abc
这里?后的opt=1就是查询字符串
当我们在一页面向另一页面传递数据时可以用此方法。
使用如下方法接到数据:
string str=Request.QueryString[“opt“]
这样str就等于“abc“
这里我们传递的是英文字符,要是传递中文字符,我们得进行编码和解吗:
傳送時用Server.UrlEncode方法編碼,接收時用Server.UrlDecode解碼.
例如:
传递:
string url=“http://www.cnblogs.com/aierong/admin/EditPosts.aspx?opt=“+Server.UrlEncode(“我们“);
Response.Redirect(url);
接收:
string str=Server.UrlDecode(Request.QueryString[“opt“]);
这样str就等于“我们“
当然我们还有一省事的方法:
在web.config中修改globalization节为
<globalization
requestEncoding="gb2312"
responseEncoding="gb2312"
/>
总结
查询字符串是在页 URL 的结尾附加的信息。
可以使用查询字符串来通过 URL 将数据提交回您的页或另一页上。
查询字符串提供一种维护某些状态信息的简单但有限的方法。
例如,它们是将信息从一页传送到另一页的简便的方法(例如,将产品号传递到将处理该产品号的另一页)。
使用查询字符串的优点
1.不需要任何服务器资源:查询字符串包含在对特定 URL 的 HTTP 请求中。
2.广泛的支持:几乎所有的浏览器和客户端设备均支持使用查询字符串传递值。
3.实现简单:ASP.NET完全支持查询字符串方法,其中包含了使用 HttpRequest 对象的Params属性读取查询字符串的方法。
使用查询字符串的缺点
1.潜在的安全性风险
用户可以通过浏览器用户界面直接看到查询字符串中的信息。
用户可将此URL设置为书签或发送给别的用户,从而通过此URL传递查询字符串中的信息。
如果您担心查询字符串中的任何敏感数据,请考虑使用窗体(使用 POST而不是查询字符串)中的隐藏域。
2.有限的容量
有些浏览器和客户端设备对URL的长度有2083个字符的限制。
http://www.cnblogs.com/aierong/admin/EditPosts.aspx?opt=abc
这里?后的opt=1就是查询字符串
当我们在一页面向另一页面传递数据时可以用此方法。
使用如下方法接到数据:
string str=Request.QueryString[“opt“]
这样str就等于“abc“
这里我们传递的是英文字符,要是传递中文字符,我们得进行编码和解吗:
傳送時用Server.UrlEncode方法編碼,接收時用Server.UrlDecode解碼.
例如:
传递:
string url=“http://www.cnblogs.com/aierong/admin/EditPosts.aspx?opt=“+Server.UrlEncode(“我们“);
Response.Redirect(url);
接收:
string str=Server.UrlDecode(Request.QueryString[“opt“]);
这样str就等于“我们“
当然我们还有一省事的方法:
在web.config中修改globalization节为
<globalization
requestEncoding="gb2312"
responseEncoding="gb2312"
/>
总结
查询字符串是在页 URL 的结尾附加的信息。
可以使用查询字符串来通过 URL 将数据提交回您的页或另一页上。
查询字符串提供一种维护某些状态信息的简单但有限的方法。
例如,它们是将信息从一页传送到另一页的简便的方法(例如,将产品号传递到将处理该产品号的另一页)。
使用查询字符串的优点
1.不需要任何服务器资源:查询字符串包含在对特定 URL 的 HTTP 请求中。
2.广泛的支持:几乎所有的浏览器和客户端设备均支持使用查询字符串传递值。
3.实现简单:ASP.NET完全支持查询字符串方法,其中包含了使用 HttpRequest 对象的Params属性读取查询字符串的方法。
使用查询字符串的缺点
1.潜在的安全性风险
用户可以通过浏览器用户界面直接看到查询字符串中的信息。
用户可将此URL设置为书签或发送给别的用户,从而通过此URL传递查询字符串中的信息。
如果您担心查询字符串中的任何敏感数据,请考虑使用窗体(使用 POST而不是查询字符串)中的隐藏域。
2.有限的容量
有些浏览器和客户端设备对URL的长度有2083个字符的限制。
相关文章推荐
- ASP.NET状态管理之二(查询字苻串QueryString)
- ASP.NET 状态管理(查询字符串 和 跨页回发)
- ASP.NET状态存储管理九大兵器之二(查询字苻串)
- ASP.NET状态管理之二(控件状态ControlState)
- ASP.NET状态管理之二:Session
- ASP.NET状态管理之五(查询字苻串QueryString)
- 【C#.NET】ASP.NET状态管理之二:Session
- ASP.NET 状态管理(cookie、Session)
- 实验五 ASP.NET状态管理和应用程序配置 总结
- ASP.NET状态管理回顾与总结
- asp.net状态管理
- Asp.net状态管理(五)
- ASP.NET中的状态管理
- 在无cookie模式中,会话话状态的ID将会自动保存在ASP.NET的查询字符串中
- ASP.NET中的状态管理
- ASP.NET状态管理之七(暂存状态HttpContext.Items)
- 【C#.NET】ASP.NET状态管理之三:Application
- ASP.NET中的状态管理
- ASP.NET状态管理建议
- 使用Sql Server管理asp.net的web application会话状态