3-8 数据协商

作者: 伯纳乌的追风少年 | 来源:发表于2018-12-05 09:21 被阅读0次

知识点:

数据协商:根据客户端发来的要求,服务端返回对应的数据

Accept 属性 (浏览器端会自动加上,也可以在ajax时设置)
request 中的头信息
Accept:浏览器可接受的MIME类型
Accept - Charset:浏览器可接受的字符集
Accept - Encoding:浏览器能够进行解码的数据编码方式,比如gzip。Servlet能够向支持gzip的浏览器返回经gzip编码的HTML页面。许多情形下这可以减少5到10倍的下载时间
Accept - Language:浏览器所希望的语言种类,当服务器能够提供一种以上的语言版本时要用到
User-Agent:系统名 内核 浏览器版本等,表明请求方的身份

Content属性(服务端返回)
response 中的头信息
Content-Type:返回内容的MIME类型
Content-Encoding:web服务器支持的返回内容压缩编码类型
Content-Language:响应体的语言
X-Content-Type-Options : nosniff ( 服务端没设置Content-Type的数据类型时,浏览器不主动预测类型)

enctype类型:
  application/x-www-form-urlencoded(常规)
  multipart/form-data(有文件)
  text/plain

勾选Preserve log会把跳转之前的信息打印出来


demo

//server
const http=require('http');
const fs=require('fs')
const zlib=require('zlib')

http.createServer(function(request,response){
    const html=fs.readFileSync('test.html')
    response.writeHead(200,{
      'Content-Type':'text/html',
      'Content-Encoding':'gzip',
      'X-Content-Type-Options':'nosniff'
    })
    response.end(zlib.gzipSync(html))
}).listen(8888)

console.log('server listening on 8888')


//html
<html>
<head>
  <title>3-8 数据协商</title>
  <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
</head>
<body>
  <form action='/form' id="form" method="POST" enctype='multipart/form-data'>
    <input type="name" name="name">
    <input type="password" name="password">
    <input type="file" name="file">
    <input type="submit">
  </form>
</body>
<script type="text/javascript">
  var form =document.getElementById('form')
  form.addEventListener('submit',function(e){
    e.preventDefault()
    var formData=new FormData(form)
    fetch('/form',{
      method:'POST',
      body:formData
    })
  })
</script>
</html>

demo演示结果

相关文章

  • 3-8 数据协商

    知识点: 勾选Preserve log会把跳转之前的信息打印出来 demo

  • 数据协商

    客户端发送给服务端请求时候,请求头中会声明希望拿到的数据格式,以及其他与数据相关的一些限制,服务端会根据它的请求中...

  • 12-数据协商

    客户端发送请求到服务端的时候,客户端会声明需要拿到的数据格式以及数据相关的限制,服务端会根据这些判断,可能会有不同...

  • [头参数]08 - 数据协商

    目录 参数 观察参数 测试压缩 测试数据类型 0. 概述 数据协商是客户端和服务端的达成的一种协议,客户端通过请求...

  • 如何完成赛事价值评估模型

    (明确目的 - 数据提取 - 数据清洗 - 下钻分析 - 找到28法则的2 - 与业务协商优化 - 优化后价值评估...

  • 前端缓存接口数据的实现

    前端缓存 API 接口数据,前端怎么知道数据是否变了,该不该取缓存的数据呢。可以采用 HTTP 协商缓存 ETag...

  • 协商

    2018年6月4日下午2点至2点40分,互加课表上赫然写着酷思熊阅读课,我觉得孩子们过了六一过了周末,天又这么热,...

  • 协商

    吃饭前,女儿与妈妈闹了矛盾,妈妈认为女儿做作业不认真,那么简单的题也错,女儿则不服气…… 吃饭的...

  • 协商

    事件:这周六6月15号又到了一个月一次的共修的时间了,我也想带孩子去北京,周日可以陪伴孩子一天,让孩子有一个快乐的...

  • 协商

    刚刚招行终于给我打电话了,说来也巧,与平安公众号沟通那天是11号, 结果平安第二天给我打的电话。与招商是12号那天...

网友评论

    本文标题:3-8 数据协商

    本文链接:https://www.haomeiwen.com/subject/qwqfcqtx.html