一.请求头
1.Accept
告诉服务器,客户端支持的数据类型
2.Accept-Encoding
告诉服务器,客户机支持的数据压缩格式。
3.Accept-Language
告诉服务器,客户机的语言环境。
4.Connection
客户机通过这个头告诉服务器,请求完后是关闭还是保持链接。
5.Content-Length
表示请求消息正文的长度。
6.Content-Type
客户机通过这个头告诉服务器,客户端向服务器发送的数据类型。
7.Cookie
客户机通过这个头告诉服务器,可以向服务器带数据。
8.Host
客户机通过这个头告诉服务器,想访问的主机名。
9.Origin
用来说明请求从哪里发起的,包括且仅仅包括协议和域名。
这个参数一般只存在于CORS跨域请求中,可以看到response有对应的header:Access-Control-Allow-Origin。
10.Referer
客户机通过这个头告诉服务器,它是从哪个资源来访问服务器的。(一般用于防盗链)
11.User-Agent
客户机通过这个头告诉服务器,客户机的软件环境。
12.Accept-Charset:
告诉服务器,客户端采用的编码。
13.Date:
客户机通过这个头告诉服务器,客户机当前请求时间。
14.If-Modified-Since
客户机通过这个头告诉服务器,资源的缓存时间。
补充
二.响应头
1.Connection
服务器通过这个头,响应完是保持链接还是关闭链接。
2.Content-Encoding
服务器通过这个头,告诉浏览器数据采用的压缩格式。
3.Content-Type
服务器通过这个头,回送数据的类型
4.Date
告诉客户机,返回响应的时间。
5.Server
服务器通过这个头,告诉浏览器服务器的类型
6.Transfer-Encoding
HTTP协议头字段Transfer_Encoding,分块传输编码,一般出现在http的响应头中。该头字段存在与HTTP协议的1.1版本中,提供一种数据传输机制。
通常http协议在传输数据时是整体一起发送的,数据体的长度由Content-Length字段指定,方便判断消息结束。
服务器通过这个头,告诉浏览器数据的传送格式。
7.vary
Vary 字段用于列出一个响应字段列表,告诉缓存服务器遇到同一个 URL 对应着不同版本文档的情况时,如何缓存和筛选合适的版本。
8.Location
这个头配合302状态码使用,告诉用户端找谁。
9.Content-Length
服务器通过这个头,告诉浏览器回送数据的长度
10.Content-Language
服务器通过这个头,告诉服务器的语言环境
11.Last-Modified
服务器通过这个头,告诉浏览器当前资源的缓存时间
12.Refresh
服务器通过这个头,告诉浏览器隔多长时间刷新一次
13.Content-Disposition
服务器通过这个头,告诉浏览器以下载的方式打开数据。
14.ETag:与缓存相关的头。
(1)Expires
服务器通过这个头,告诉浏览器把回送的数据缓存多长时间。-1或0不缓存。
(2)Cache-Control和Pragma
服务器通过这个头,也可以控制浏览器不缓存数据
————————————————
版权声明:本文为CSDN博主「Firm陈」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_42408447/article/details/121396512
var req = new XMLHttpRequest()
req.open('GET', document.location, false)
req.send(null)
var headers = req.getAllResponseHeaders().toLowerCase()
var tempCode = req.getResponseHeader('code')
var token = req.getResponseHeader('access_token')
if (token) {
localStorage.setItem('token-weiban', token)
} else {
localStorage.setItem('token-weiban', '123')
}
var code = '456'
if (tempCode) {
code = tempCode
}
console.log(headers)
node设置html页面响应头:
const toolsGetPage = async (req, res) => {
const { code } = req.query
const tempPage = fs.readFileSync(
'/source/banxuezhushou_h5/public/weiban/order.html',
'utf-8'
)
if (code === '666') {
res.setHeader('access_token', Date.now())
res.setHeader('code', 'code-' + Date.now())
res.send(tempPage)
//res.redirect('http://localhost:85/#/h5/index/home/recommend')
} else {
res.setHeader('access_token', 'no')
res.setHeader('code', 'code-' + Date.now())
res.send(tempPage)
}
}