怎样在HttpServletRequest 加入一个head值

在servlet里面通过request.getHeader()可以获取一个head值,但是怎么在请求这个servlet之前通过服务端,例如一个统一的filter向request中加入一个head?

阅读 14.3k
1 个回答

HttpServletRequest这个类没提供写方法,都是get和is。
官方文档(http://download.oracle.com/javaee/6/a... )说这个类的对象是servlet container创建,作为参数传给servlet的service的。也就是说这个对象的生命周期都是发生在服务端的,所以如果需要把什么东西传递给servlet,完全没有必要通过header的方式。貌似在response里setheader给客户端才有意义,在request里还真没遇到过。
如果非要在这个对象里set点什么东西,他的父类,ServletRequest,有setAttribute方法,可以参考。
另外:翻了半天HttpServletRequest的原码,没翻到,只找到接口定义。但是个人分析,HttpServletRequest的header应该跟父类的attribute有关,如果能找到getHeader方法的原码,或许能分析出怎么set一个header。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进