只有URLEncode在ASP,并没有解决问题的URLdecode。

只有URLEncode在ASP,并没有解决问题的URLdecode。
在ASP传输参数的server.urlencode系统中一个非常有用的功能,一些特殊的符号可以被转换成标准的非字母数字的URL编码(实际上是16进制ASC码),这样就解决了参数传递的问题,那么我认为还提供server.urldecode,但使用后发现程序中的错误。原来的系统在我的想象中没有提供解码功能,你是怎么做的呢

UrlEncode的原理很简单,就是将特殊字符的ASC码值为16的二进制。然后解码函数只返回16个二进制升序对应字符。
函数的URLDecode(任务)'url解码功能
昏暗的破坏
模糊的C,I,V
破坏=
我= 1 len(任务)
C =(任务中,我,1)
如果% 然后
V = eval(H+中(还是,我+ 1,2))
如果v<128,那么
destrchr破坏=(V)
i = i + 2
其他的
如果isvalidhex(MID(还是,我,3))然后
如果isvalidhex(MID(还是,我+ 3))然后
V = eval(H+中(还是,我+ +中(1,2)任务,我+ 4,2))
destrchr破坏=(V)
i = i + 5
其他的
V = eval(H+中(还是,我+ 1,2)+ CSTR(HEX(ASC(MID(还是,我+ 3,1 )))))))
destrchr破坏=(V)
i = i + 3
最后如果
其他的
destrc破坏=
最后如果
最后如果
其他的
如果
破坏=破坏
其他的
destrc破坏=
最后如果
最后如果
下一个
urldecode =破坏
端功能

功能isvalidhex(STR)
isvalidhex =真
STR = ucase(STR)
如果len(str)<> 3 isvalidhex =假:退出功能
如果左(STR,1)<>%然后isvalidhex =假:退出功能
C =中(STR,2,1)
如果不是(((C > =0)和(C = )和(C < =Z)))然后isvalidhex =假:退出功能
C =中(STR,3,1)
如果不是(((C > =0)和(C = )和(C < =Z)))然后isvalidhex =假:退出功能
端功能
这不是一个测试在ASP gb312格式的使用问题。
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部