我的代码逻辑是这样,需要从body中提取每一行数据,但是无法判断数据是否以及接收完毕。最后一次接收时err=closed,这可以表示数据接收完毕了吗?关于err=closed有文档定义吗,其他err错误还有什么呢?官网上没有查到相关资料,恳请回复
content_by_lua_block {
local socket, err = ngx.req.socket()
local ret = ''
while true do
local buf, err_msg, partial = socket:receive('*l')
ngx.log(ngx.ERR, buf)
ngx.log(ngx.ERR, err_msg)
if err_msg then
break
end
ret = ret .. buf
end
ngx.say(ret)
}
```
2023/06/06 11:21:19 [error] 18724#0: *55 [lua] content_by_lua(nginx.conf:44):6: hello, client: 172.19.124.56, server: , request: "POST /t HTTP/1.1", host: "
172.18.2.33:8081"
2023/06/06 11:21:19 [error] 18724#0: *55 [lua] content_by_lua(nginx.conf:44):7: nil, client: 172.19.124.56, server: , request: "POST /t HTTP/1.1", host: "
172.18.2.33:8081"
2023/06/06 11:21:19 [error] 18724#0: *55 [lua] content_by_lua(nginx.conf:44):6: world, client: 172.19.124.56, server: , request: "POST /t HTTP/1.1", host: "
172.18.2.33:8081"
2023/06/06 11:21:19 [error] 18724#0: *55 [lua] content_by_lua(nginx.conf:44):7: nil, client: 172.19.124.56, server: , request: "POST /t HTTP/1.1", host: "
172.18.2.33:8081"
2023/06/06 11:21:19 [error] 18724#0: *55 [lua] content_by_lua(nginx.conf:44):6: nil, client: 172.19.124.56, server: , request: "POST /t HTTP/1.1", host: "
172.18.2.33:8081"
2023/06/06 11:21:19 [error] 18724#0: *55 [lua] content_by_lua(nginx.conf:44):7: closed, client: 172.19.124.56, server: , request: "POST /t HTTP/1.1", host: "
172.18.2.33:8081"