仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 583|回复: 7
打印 上一主题 下一主题

[学习教程] ASP网页编程之ASP进修:urldecode 办法补遗

[复制链接]
兰色精灵 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:43:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
ASP最大的缺点在于网络的安全性和可靠性,企业将经营数据放在开放的平台上,最大的担忧就是如何保证这些数据不被其他人破坏。asp内里没有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”看看,能够了。
固然,你还能够玩点小段,使之成为本人的一种字符串加密体例。
由于ASP还是一种Script语言所没除了大量使用组件外,没有办法提高其工作效率。它必须面对即时编绎的时间考验,同时我们还不知其背后的组件会是一个什么样的状况;
金色的骷髅 该用户已被删除
沙发
发表于 2015-1-19 21:43:58 | 只看该作者
我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。
再见西城 该用户已被删除
板凳
发表于 2015-1-26 21:02:47 | 只看该作者
弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。
若相依 该用户已被删除
地板
发表于 2015-2-10 08:10:29 | 只看该作者
Request:从字面上讲就是“请求”,因此这个是处理客户端提交的东东的,例如Resuest.Form,Request.QueryString,或者干脆Request("变量名")
山那边是海 该用户已被删除
5#
发表于 2015-3-1 04:01:38 | 只看该作者
学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:
第二个灵魂 该用户已被删除
6#
发表于 2015-3-10 12:31:32 | 只看该作者
我们必须明确一个大方向,不要只是停留在因为学而去学,我们应有方向应有目标.
莫相离 该用户已被删除
7#
发表于 2015-3-17 07:07:40 | 只看该作者
最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。
简单生活 该用户已被删除
8#
发表于 2015-3-24 00:58:01 | 只看该作者
接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 04:00

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表