老尸 发表于 2015-1-16 14:23:01

来一篇关于NET的Url编码与解码剖析

在CSDN里搜索一下“初学”两字,竟有三百余篇帖子(也许更多)。有些帖子说,有了asp的基础,只要15天就能很熟悉了,我甚感自己的愚钝。更多帖子是向大家请教初学者适合看书。两个多月的时间(当然平常杂事比较多。看到良多伴侣包含小编的同事都喜好在url传中文参数,大概事先本人在测试时,传中文参数并没有报错,但我们是不保举间接传不经由url编码的中文参数的,本章,我们来看看关于url编码相干的常识。

在url不强迫说不克不及包括中文,但我们应当只管使url串中只包括ascII字符。以是养成将url编码后再发送到服务器,是个好习气。

Asp.Net是使用Server下的UrlEncode办法与UrlDncode办法来对Url举行编解码的。
Server.UrlEncode(strings)--对s举行Url编码:
Server.UrlDncode(strings)--对s举行Url解码:

UrlEncode会将空格编码为+,不会对~Z、a~z、0~9、-、_、.、!、*、、(、)这些字符编码,由于这些字符是被以为是平安的字符,别的的字符就会被编码成为%开首的十六制的字符。

好比,我们对"您好"两个字举行编码:
示例:
protectedoverridevoidOnInit(EventArgse)
{
Response.Write(Server.UrlEncode("您好"));
}

输入:%e6%82%a8%e5%a5%bd

我们再将下面编码后的字符解码:
示例:
protectedoverridevoidOnInit(EventArgse)
{
Response.Write(Server.UrlDecode("%e6%82%a8%e5%a5%bd"));
}

输入:您好

有的时分,我们在网高低载文件,在网站上看到的文件名是一般的,但在保留提醒框中显现的文件名倒是乱码,这就是没有对文件名举行编码的缘故原由。

注重:
1,不要对全部Url地点举行编码:比方:
protectedvoidButton1_Click(objectsender,EventArgse)
{
Response.Redirect(Server.UrlEncode("http://www.lmwlove.com"));
}

如许,扫瞄器就认不到你的Url地点了,由于url下面的url地点已被编码成http%3a%2f%2fwww.lmwlove.com了。

2,#字符是不会被编码的,由于#在url代表的是锚点,有特别意义,它会截断Url中本身右侧的字符,#字符右侧的字符是不会发送到服务器端,右侧的字符次要用来让扫瞄器界说到网页中界说好的锚点地位。以是,除锚点功效外,我们不要在url将#做为参数传送。我实在想不明白java的机制,为什么非要那么蛋疼,在同一个平台下重复编译。

活着的死人 发表于 2015-1-18 13:45:15

ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象。

柔情似水 发表于 2015-2-3 11:28:11

以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。

兰色精灵 发表于 2015-2-8 20:58:27

Servlet的形式和前面讲的CGI差不多,它是HTML代码和后台程序分开的。它们的启动原理也差不多,都是服务器接到客户端的请求后,进行应答。不同的是,CGI对每个客户请求都打开一个进程(Process)。

透明 发表于 2015-2-26 11:04:20

微软又推出ASP.NET。这不是ASP的简单升级,而是全新一代的动态网页实现系统,用于一台WEB服务器建立强大的应用程序。是微软发展的新体系结构.NET的一部分,是ASP和.NET技术的结合。

精灵巫婆 发表于 2015-3-8 14:09:16

ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象。

再现理想 发表于 2015-3-16 02:54:47

主流网站开发语言之PHP:PHP的全名非常有趣,它是一个巢状的缩写名称——“PHP:HypertextPreprocessor”,打开缩写还是缩写。PHP是一种HTML内嵌式的语言(就像上面讲的ASP那样)。而PHP独特的语法混合了C,Java,Perl以及PHP式的新语法。它可以比CGI或者Perl更快速地执行动态网页。

深爱那片海 发表于 2015-3-22 19:11:36

我觉得什么语言,精通就好,你要做的就是比其他80%的人都厉害,你就能得到只有20%的人才能得到的高薪。
页: [1]
查看完整版本: 来一篇关于NET的Url编码与解码剖析