问题
今天测试同事在测试接口时遇到了测试环境无法获取到header中参数的问题,但是本地可以。
分析
经过反复查看配置,发现是Nginx引起的。 Nginx做反向代理时默认request的header的那么中包含 _ 时,会自动忽略掉。而接口的header刚好包含_。
解决方案
修改Nginx配置文件 nginx.conf
在http部分中添加如下配置:
underscores_in_headers on; (默认 underscores_in_headers 为off)
即可解决header参数丢失问题。