js如何获取response header信息

JavaScript018

js如何获取response header信息,第1张

$.ajax({

type: 'HEAD', // 获取头信息,type=HEAD即可

url : window.location.href,

complete: function( xhr,data ){

// 获取相关Http Response header

var wpoInfo = {

// 服务器端时间

"date" : xhr.getResponseHeader('Date'),

// 如果开启了gzip,会返回这个东西

"contentEncoding" : xhr.getResponseHeader('Content-Encoding'),

// keep-alive ? close?

"connection" : xhr.getResponseHeader('Connection'),

// 响应长度

"contentLength" : xhr.getResponseHeader('Content-Length'),

// 服务器类型,apache?lighttpd?

"server" : xhr.getResponseHeader('Server'),

"vary" : xhr.getResponseHeader('Vary'),

"transferEncoding" : xhr.getResponseHeader('Transfer-Encoding'),

// text/html ? text/xml?

"contentType" : xhr.getResponseHeader('Content-Type'),

"cacheControl" : xhr.getResponseHeader('Cache-Control'),

// 生命周期?

"exprires" : xhr.getResponseHeader('Exprires'),

"lastModified" : xhr.getResponseHeader('Last-Modified')

}

// 在这里,做想做的事。。。

}

})

请求的时候多加一个参数

dataType:json

返回的就是array数组。

两个response,在两个不同的success方法里面,作用域是不同的,没毛病

这个你要用ajax才可以获得。

也就是说,在js里

1新建XMLHttpRequest对象(例如名为:xmlhttp)

2.XMLHttpRequest对象发送请求 :xmlhttp.open("GET","url",true)

注意里面的url就是你struts2跳转的action,例如test.action

3.通过struts.xml找到url跳转到的Action,在execute方法里写 response.getWriter().write("aaaaa")

Struts2获得Httpresponse对象会吧,要用ServletActionContext.getResponse()(别忘了在execute方法最后加上一句return null ,作为execute方法的返回。)

4.在js后面里继续写: var resultstr = xmlhttp.responseText 那么等异步传输完成,resultstr就会被赋值为"aaaaa"

我前面说的1,2,4步骤都是涉及ajax内容,如果对ajax不了解,需要先去学习ajax基础用法