-
Notifications
You must be signed in to change notification settings - Fork 2.8k
Closed
Description
Description
modify ctx.lua to support content-type application/x-www-form-urlencoded;charset=utf-8 to match route
like this:
253 elseif core_str.has_prefix(key, "post_arg_") then
254 -- only match default post form
255 local con_t = request.header(nil, "Content-Type")
256 local con_t_s = sub_str(con_t, 1, 33)
257 if con_t_s == "application/x-www-form-urlencoded" then
258 local arg_key = sub_str(key, 10)
259 local args = request.get_post_args()[arg_key]
260 if args then
261 if type(args) == "table" then
262 val = args[1]
263 else
264 val = args
265 end
266 end
267 end
get some errors:
[error] 51#51: *10048 lua entry thread aborted: runtime error: /usr/local/apisix/apisix/core/ctx.lua:256: bad argument #1 to 'sub_str' (string expected, got nil)
stack traceback:
coroutine 0:
[C]: in function 'sub_str'
/usr/local/apisix/apisix/core/ctx.lua:256: in function '__index'
/usr/local/apisix//deps/share/lua/5.1/resty/expr/v1.lua:291: in function 'eval'
/usr/local/apisix/apisix/plugins/traffic-split.lua:253: in function 'phase_func'
/usr/local/apisix/apisix/plugin.lua:720: in function 'run_plugin'
/usr/local/apisix/apisix/init.lua:471: in function 'http_access_phase
so ,how can I repair it.
thx.
Environment
- APISIX version (run
apisix version): - Operating system (run
uname -a): - OpenResty / Nginx version (run
openresty -Vornginx -V): - etcd version, if relevant (run
curl http://127.0.0.1:9090/v1/server_info): - APISIX Dashboard version, if relevant:
- Plugin runner version, for issues related to plugin runners:
- LuaRocks version, for installation issues (run
luarocks --version):
Metadata
Metadata
Assignees
Labels
No labels