debug测试,发现前端发来请求头中确实没有找到添加的请求头参数,但是 Network 中却显示请求头中有该参数信息。
原因是RequestHeaders中设置的请求参数含有下划线,NGINX将静默地丢弃带有下划线的HTTP标头,这样做是为了防止在将头映射到CGI变量时出现歧义,因为在该过程中,短划线和下划线都映射到下划线。
解决办法
1、需要在最外层 nginx 的 http 全局中,添加或修改
underscores_in_headers on;
然后重新加载nginx配置文件。2、修改请求头信息,如将 access_token 修改为 access-token 。