nginx header传参总是传不过去

问题:

前端给后端传值,放到request的header中,但是后台接受时候总是为null 经过查询 nginx对header name的字符做了限制,默认 underscores_in_headers 为off,表示如果header name中包含下划线,则忽略掉,部署后就获取不到。

解决方案

  1. 在header里不要用 “_” 下划线,可以用驼峰命名或者其他的符号(如减号-)代替。nginx默认忽略掉下划线可能有些原因。
  2. 在nginx里的 nginx.conf文件中配置http的部分添加 : underscores_in_headers on;(默认值是off)