1. 获取param参数
local arg = ngx.req.get_uri_args();
for k,v in pairs(arg) do
ngx.log(ngx.WARN,"key=",k," val=",v);
end
2. 读取body
-- 解析 body 参数之前一定要先读取 body
ngx.req.read_body()
local arg = ngx.req.get_post_args();
for k,v in pairs(arg) do
ngx.log(ngx.WARN,"bkey=",k," bval=",v);
end
-- 解析 body 参数之前一定要先读取 body ngx.req.read_body()
-- 这个读取application/json
local data = ngx.req.get_body_data()
ngx.log(ngx.WARN,"data=",data)
3. 下载
location /download { root html; # content_by_lua_file luademo/download.lua; access_by_lua_block { ngx.var.limit_rate = 10000 #10K } }
wget http://192.168.6.170:10000/download/a.zip
sleep
location /testsleep { content_by_lua_block { ngx.say("hello") ngx.sleep(3) ngx.say("the world") } } location /test2 { content_by_lua_block { ngx.say("hello") ngx.flush() -- 显式的向客户端刷新先响应输出 ngx.sleep(3) ngx.say("the world") } }