码迷,mamicode.com
首页 > 其他好文 > 详细

获取不到自定义的request的header属性

时间:2019-08-01 17:34:26      阅读:545      评论:0      收藏:0      [点我收藏+]

标签:ogg   就是   代码   class   定义   conf   eth   bsp   next   

java获取headers的代码如下:

// 获取http-header里面对应的签名信息
Enumeration<?> headerNames = request.getHeaderNames();
logger.info("request headerNames : {}", JSONParser.toJSONString(request.getHeaderNames()));
logger.info("request sys_sign header : {}", JSONParser.toJSONString(request.getHeader("sys_sign")));
// 签名的key
String key = null;
// 签名内容
String signValue = null;
while (headerNames.hasMoreElements()) {
    // 获得请求头部的Key
    key = (String) headerNames.nextElement();
    if ("sys_sign".equals(key)) {
        signValue = request.getHeader(key);
        break;
    }
}

代码没问题,却就是获取不到header属性: sys_sign ;

查了半天,发现跟nginx的配置有关系,nginx会默认去除属性名包含下划线“_”的属性。

解决方法,修改nginx的配置文件 nginx.conf ,在配置http的部分修改如下:

underscores_in_headers on; ##(默认值是off)

 

建议不要使用包含下划线属性名 . . .

 

获取不到自定义的request的header属性

标签:ogg   就是   代码   class   定义   conf   eth   bsp   next   

原文地址:https://www.cnblogs.com/whzbz894/p/11283883.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!