网络安全面试提问:网络传输为什么需要进行URL编码?
- URL中的特殊符号容易被错误解析,比如单字符换行(\n)需要编码成%0A
- URL最初只支持ASCII字符集,非ASCII字符需要编码成可打印字符才能使用,比如中文
ailx10
网络安全优秀回答者
网络安全硕士
去咨询
- URL编码
# -*- coding: utf-8 -*-
from urllib.parse import unquote,quote
url11 = '{"ailx10":"Network security\nCISSP Information Security Expert"}'
url12 = quote(url11,safe="?:=/")
print("URL编码:{}".format(url12))
# 输出: URL编码:%7B%22ailx10%22:%22Network%20security%0ACISSP%20Information%20Security%20Expert%22%7D
- URL解码
# -*- coding: utf-8 -*-
from urllib.parse import unquote,quote
url21 = "%7B%22ailx10%22:%22Network%20security%0ACISSP%20Information%20Security%20Expert%22%7D"
url22 = unquote(url21)
print("URL解码:{}".format(url22))
# 输出:URL解码:{"ailx10":"Network security
# CISSP Information Security Expert"}