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 数据协商

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