local url={parsed={}} --存储decode出来的key-value
--private
local function escape(w)
pattern="[^%w%d%._%-%* ]"
s=string.gsub(w,pattern,function(c)
local c=string.format("%%%02X",string.byte(c))
return c
end)
s=string.gsub(s," ","+")
return s
end
local function detail_escape(w)
local t={}
for i=1,#w do
c = string.sub(w,i,i)
b,e = string.find(c,"[%w%d%._%-'%* ]")
if not b then
t[#t+1]=string.format("%%%02X",string.byte(c))
else
t[#t+1]=c
end
end
s = table.concat(t)
s = string.gsub(s," ","+")
return s
end
local function unescape(w)
s=string.gsub(w,"+"," ")
s,n = string.gsub(s,"%%(%x%x)",function(c)
return string.char(tonumber(c,16))
end)
return s
end
---[=[
--public function
function url:new()
local u={} --对象
u.old= nil
lua 编码转码url
最新推荐文章于 2024-08-31 13:01:05 发布
本文分享了一个使用Lua编写的URL编码和解码模块,通过简单易懂的代码实现URL字符串的转换,适用于相关开发测试场景。
摘要由CSDN通过智能技术生成