使用springmvc作为框架,用urlrewrite实现了RESTful风格的url。
页面上使用了jquery,
我在jquery中使用ajax访问后台,同时给在请求头增加了一个自定义的http头,代码如下:
[code="js"]
function getSign(){
var params = $("#source").val();
$.ajax({
type:"GET",
url:"sign",
beforeSend:function(xhr){
xhr.setRequestHeader("x_client_param", params);
},
data:params,
dataType:"html",
success:function(data) {
$("#sign").text(data);
}
});
}
[/code]
使用firebug调试时,能看到我新增加的头 x_client_param,但是在sign的controller中,代码如下:
[code="java"]
@RequestMapping(value = "/sign")
public void signSource(HttpServletRequest request, HttpServletResponse response) {
String header = request.getHeader("x_client_param");
logger.info("header value is: " + header);
Enumeration em = request.getHeaderNames();
while(em.hasMoreElements()) {
String key = em.nextElement().toString();
logger.info(key + ":" + request.getHeader(key));
}
}
[/code]
我却得不到我在页面上定义的http头,我用遍历或者直接根据header名得的时候都得不到。