事实上之前还有另外一层疑惑:之前一般在前面的rewrite/access_by_lua抛异常,返回的都是500(内部错误),在header_filter这里返回的是200;
之前用header_filter关键字在issue里搜了下,发现了这个:
https://github.com/openresty/lua-nginx-module/pull/969#issuecomment-276537269
貌似这一楼的测试例子有点类似:在不同阶段不同的exit(代码抛异常应该是一个ngx.ERROR吗?)带来的结果是不太一样的,这么理解对吗?
在 2019年7月27日星期六 UTC+8上午9:24:34,doujiang写道:
是的, Lua 的运行异常,总是应该避免的
感谢答疑,我原来的理解是header/body_
filter阶段的动作只是修改/新增指定的内容,如果失败了不会影响主流程(响应内容或者响应头);看来需要更多的异常检查了...
在 2019年7月20日星期六 UTC+8上午12:27:02,doujiang写道:因为 header_filter 是用来处理 http response header 的,包括相应码
你这个是在 header_filter 里跑出异常了,所以什么也不会有了,header 都没有了,body 自然也不会有了