ngx.escape_uri()无效'/'?

问题描述 投票:0回答:1

我正在尝试将url编码为这样的arg值

url = "http://test.com?a=1&b=2"
encode_url = "http://domain?url="..ngx.escape_uri(url)

然后就变成了

http://domain?url=http%3A//test.com%3Fa%3D1%26b%3D2

但我想要这个

http://domain?url=http%3a%2f%2ftest.com%3fa%3d1%26b%3d2

我也尝试ngx.encode_args(),它是一样的

有谁知道为什么?我该怎么办?

lua encode openresty
1个回答
0
投票
host = "http://test.com"
uri = "?a=1&b=2"

encode_host = ngx.encode_args({[host]=true})
encode_args = ngx.escape_uri(uri)
encode_url = "http://domain?url=" .. encode_host .. encode_args
© www.soinside.com 2019 - 2024. All rights reserved.