首页 » 网站建设 » phpurldecode解码在线技巧_HTTP报文URL解码实现

phpurldecode解码在线技巧_HTTP报文URL解码实现

访客 2024-11-21 0

扫一扫用手机浏览

文章目录 [+]

Content-Type指定为application/x-www-form-urlencoded 的时候

我们提交的数据编码形式是通过&连接 比如key="<hack>"&value="ailx10"

phpurldecode解码在线技巧_HTTP报文URL解码实现

同时<hack>和ailx10会进行URL编码

phpurldecode解码在线技巧_HTTP报文URL解码实现
(图片来自网络侵删)

key=%3Chack%3E&value=ailx10

%3C:< %3E:>

0x3C是<的ASCII码 %3E是>的ASCII码

以是懂了吗?URL编码便是将字符编码成ASCII码或其他

那么URLDecode的意思便是将ASCII码或其他 转化成字符

这里方便理解以ASCII码为例子 记住不仅仅是ASCII码哦

当我们碰着%的时候 意味着转码开始 连续2个16进制数字 比如%3C

URL转码便是将%3C转为char型10进制数据60 记住这里只占1个字节哦

怎么玩呢?代码如下

阐明一下HEX2DEC数据的意义

16进制转10进制的转换表 ASCII码10进制48是字符0 65是字符A 97是字符a

在看看HEX2DEC数组

HEX2DEC[48] = 0HEX2DEC[65] = AHEX2DEC[97] = a

以是现在理解了吧 ~~~

void utils_uri_decode(const unsigned char sSrc,char dst) { const unsigned char pSrc = sSrc; size_t src_len = strlen((const char)sSrc); const unsigned char src_end = pSrc + src_len; const unsigned char src_last_dec = src_end - 2; char pStart = dst; char pEnd = pStart; while (pSrc < src_last_dec) { if (pSrc == '%') { char dec1, dec2, guard = -1; if (guard != (dec1 = HEX2DEC[(pSrc + 1)]) && guard != (dec2 = HEX2DEC[(pSrc + 2)])) { pEnd++ = (dec1 << 4) + dec2; pSrc += 3; continue; } } pEnd++ = pSrc++; } while (pSrc < src_end) { pEnd++ = pSrc++; } return;}

const char HEX2DEC[256] = { / 0 1 2 3 4 5 6 7 8 9 A B C D E F / / 0 / (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, / 1 / (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, / 2 / (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, / 3 / 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, / 4 / (char)-1, 10, 11, 12, 13, 14, 15, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, / 5 / (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, / 6 / (char)-1, 10, 11, 12, 13, 14, 15, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, / 7 / (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, / 8 / (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, / 9 / (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, / A / (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, / B / (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, / C / (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, / D / (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, / E / (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, / F / (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1, (char)-1};

标签:

相关文章

R语言在数据分析与统计建模中的应用讨论

随着信息技术的飞速发展,数据已成为推动社会进步的重要资源。在这个大数据时代,如何高效地处理和分析海量数据,成为亟待解决的问题。R语...

网站建设 2024-12-27 阅读0 评论0

证券IT领域,赋能金融创新,驱动行业未来

随着互联网技术的飞速发展,金融行业迎来了前所未有的变革。证券IT领域作为金融科技的重要组成部分,正逐渐成为推动行业创新和发展的关键...

网站建设 2024-12-27 阅读0 评论0

证券IT前景广阔,数字化转型助力行业升级

随着科技的飞速发展,信息技术(IT)已经渗透到各行各业,证券行业也不例外。在金融领域,IT技术正成为推动行业变革的重要力量。本文将...

网站建设 2024-12-27 阅读0 评论0

R语言包的推荐与应用,助力数据分析新时代

随着大数据时代的到来,数据分析已经成为了各行各业的重要工具。在众多数据分析工具中,R语言以其强大的数据处理能力和丰富的函数库,成为...

网站建设 2024-12-27 阅读0 评论0

R语言中的对数,介绍与运用

对数作为一种数学运算,广泛应用于各个领域。在R语言中,对数函数是数据分析中不可或缺的工具之一。本文将介绍R语言中的对数函数,并探讨...

网站建设 2024-12-27 阅读0 评论0