在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
openresty(nginx+lua)中获取不到post数据,ngx.req.get_body_data返回nil This function returns nil if
打开nginx调试日志
发现如下日志:
可见是因为body太大,被缓冲到临时文件中,此时应该使用ngx.req.get_body_file fix代码 function read_from_file(file_name) local f = assert(io.open(file_name, "r")) local string = f:read("*all") f:close() return string end ngx.req.read_body() local body = ngx.req.get_body_data() if (body == nil) then local body_file = ngx.req.get_body_file() if body_file then body = read_from_file(body_file) else ngx.status = 500 ngx.say("error") return end end
参考: |
请发表评论