仓酷云 发表于 2015-1-16 23:35:36

ASP编程:urldecode 办法补遗。

强大的可扩展性。ASP具有强大的扩展性,可以实现与多种网络、硬件设备的连接:通过专用的通讯线路远程接入企业;通过远程拨号服务器为远程拨号客户提供服务;通过WAP为移动电话互联网客户服务。decodeasp内里没有urldecode函数,好象aspx里有吧,我不太分明,但asp内里仍是用得良多。在网上查找了有他人写的urldecode函数,可是这个函数有毛病,并且在一些方面写得对照难了解。并且有毛病,当内里有冷僻双字节笔墨时就会发生毛病,如“W”经urlencoder后为“%81W”,解码就不克不及乐成。

实在双字节编码在这里只需把"W"也编成16进制ASC码就能够。

常识点:盘算机里的cookie也是经由urlencode编码的,以是urldecode对破解cookie也很有效呵。

上面是源代码:

FunctionURLDecode(enStr)
dimdeStr
dimc,i,v
deStr=""
fori=1tolen(enStr)
c=Mid(enStr,i,1)
ifc="%"then
v=eval("&h"+Mid(enStr,i+1,2))
ifv<128then
deStr=deStr&chr(v)
i=i+2
else
ifisvalidhex(mid(enstr,i,3))then
ifisvalidhex(mid(enstr,i+3,3))then
v=eval("&h"+Mid(enStr,i+1,2)+Mid(enStr,i+4,2))
deStr=deStr&chr(v)
i=i+5
else
v=eval("&h"+Mid(enStr,i+1,2)+cstr(hex(asc(Mid(enStr,i+3,1)))))
deStr=deStr&chr(v)
i=i+3
endif
else
destr=destr&c
endif
endif
else
ifc="+"then
deStr=deStr&""
else
deStr=deStr&c
endif
endif
next
URLDecode=deStr
endfunction


functionisvalidhex(str)
isvalidhex=true
str=ucase(str)
iflen(str)3thenisvalidhex=false:exitfunction
ifleft(str,1)"%"thenisvalidhex=false:exitfunction
c=mid(str,2,1)
ifnot(((c>="0")and(c<="9"))or((c>="A")and(c<="Z")))thenisvalidhex=false:exitfunction
c=mid(str,3,1)
ifnot(((c>="0")and(c<="9"))or((c>="A")and(c<="Z")))thenisvalidhex=false:exitfunction
endfunction

你用此办法解码“%81W”看看,能够了。

固然,你还能够玩点小段,使之成为本人的一种字符串加密体例。

</p>无法实现跨操作系统的应用。当然这也是微软的理由之一,只有这样才能发挥ASP最佳的能力。可是我却认为正是Windows限制了ASP,ASP的概念本就是为一个能让系统运行于一个大的多样化环境而设计的;

仓酷云 发表于 2015-1-19 10:59:01

代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。

金色的骷髅 发表于 2015-1-22 14:41:18

先学习用frontpage熟悉html编辑然后学习asp和vbscript建议买书进行系统学习

兰色精灵 发表于 2015-1-25 19:41:16

我们必须明确一个大方向,不要只是停留在因为学而去学,我们应有方向应有目标.

admin 发表于 2015-2-3 17:49:40

ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。  因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。

若天明 发表于 2015-2-9 04:17:03

那么,ASP.Net有哪些改进呢?

飘飘悠悠 发表于 2015-2-26 21:36:17

他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。

乐观 发表于 2015-3-8 18:01:52

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

老尸 发表于 2015-3-16 09:09:47

最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。

山那边是海 发表于 2015-3-22 22:08:14

学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。

深爱那片海 发表于 2015-3-22 22:08:14

Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点)

只想知道 发表于 2015-3-22 22:08:15

代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。

灵魂腐蚀 发表于 2015-3-22 22:08:15

还有如何才能在最短的时间内学完?我每天可以有效学习2小时,双休日4小时。

再见西城 发表于 2015-3-22 22:08:15

Session:这个存储跟客户端会话过程的数据,默认20分钟失效
页: [1]
查看完整版本: ASP编程:urldecode 办法补遗。