HTTP(Ⅸ)—— 数据协商

在客户端向服务器发送请求的时候,会告诉服务器我想要拿到的数据格式,以及数据相关的限制,服务端会根据他的请求,做出判断,然后决定要返回什么样子的数据。这就是数据协商上。

请求的Accept

  • Accept:表示的是我想要什么类型的数据
  • Accept-Encoding:表示我想要数据的编码方式
  • Accept-Language:返回数据数据语言
  • User-Agent:表示浏览器的相关信息,来判断是判断返回是PC端页面还是移动端页面。

返回的通过Connect

  • Content-Type:实际返回的数据格式
  • Content-Encoding:服务端数据压缩格式的声明
  • Content-Language:是否通过你的请求返回了相关的语言

数据压缩,首先来看图:

我们将server.js修改为如下:

const http = require('http')
const fs = require('fs')
const zlib = require('zlib')
http.createServer(function(request, response) {
    console.log('request come', request.url)
    const html = fs.readFileSync('test.html')
    response.writeHead(200, {
        'Content-Type': 'text/html',
        'COntent-Encoding': 'gzip'
    })
     response.end(zlib.gzipSync(html))
}).listen(8888)
console.log('server listening on 8888')

此时重启服务刷新,我们会看见如下信息:

相对于上次的图,我们可以看到在传输过程中的文件内容变小了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值