请求头、响应

请求头、响应

请求头的参数的详情

  • Accept:浏览器端可以接受的媒体类型

    • Accept: text/html 代表浏览器可以接受服务器回发的类型为 text/html 也就是我们常说的html文档,如果服务器无法返回text/html类型的数据,服务器应该返回一个406错误(non acceptable)
    • *代表任意类型 例如 Accept: / 代表浏览器可以处理所有类型(一般浏览器发给服务器都是发这个)
  • Accept-Encoding: 浏览器申明自己接收的编码方法,通常指定压缩方法,是否支持压缩,支持什么压缩方法(gzip,deflate),(注意:这不是只字符编码)

  • Accept-Language:浏览器申明自己接收的语言。

  • Connection

    • Connection: keep-alive 当一个网页打开完成后,客户端和服务器之间用于传输HTTP数据的TCP连接不会关闭,如果客户端再次访问这个服务器上的网页,会继续使用这一条已经建立的连接
    • Connection: close 代表一个Request完成后,客户端和服务器之间用于传输HTTP数据的TCP连接会关闭, 当客户端再次发送Request,需要重新建立TCP连接。
  • Host:(发送请求时,该报头域是必需的)请求报头域主要用于指定被请求资源的Internet主机和端口号,它通常从HTTP URL中提取出来的

    • Host:www.hzau.edu.cn 此处使用缺省端口号80,若指定了端口号,则变成:Host:指定端口号
  • Referer:当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器我是从哪个页面链接过来的,服务器籍此可以获得一些信息用于处理。

  • User-Agent:告诉HTTP服务器, 客户端使用的操作系统和浏览器的名称和版本.

  • Cookie:用来存储一些用户信息以便让服务器辨别用户身份的(大多数需要登录的网站上面会比较常见)

  • Content-Type

    • application/x-www-form-urlencoded(数据被编码为名称/值对。这是标准的编码格式)
    • multipart/form-data(数据被编码为一条消息,页上的每个控件对应消息中的一个部分)
    • text/plain(数据以纯文本形式(text/json/xml/html)进行编码,其中不含任何控件或格式字符)
    • 例如
      • form的enctype属性为编码方式,常用有两种:application/x-www-form-urlencoded和multipart/form-data,默认为application/x-www-form-urlencoded。
      • 当action为get时候,浏览器用x-www-form-urlencoded的编码方式把form数据转换成一个字串(name1=value1&name2=value2…),然后把这个字串追加到url后面,用?分割,加载这个新的url。
      • 当action为post时候,浏览器把form数据封装到http body中,然后发送到server。 如果没有type=file的控件,用默认的application/x-www-form-urlencoded就可以了。 但是如果有type=file的话,就要用到multipart/form-data了。
      • 当action为post且Content-Type类型是multipart/form-data,浏览器会把整个表单以控件为单位分割,并为每个部分加上Content-Disposition(form-data或者file),Content-Type(默认为text/plain),name(控件name)等信息,并加上分割符(boundary)。

常见的媒体格式类型

  • text/html:HTML格式
  • text/plain:纯文本格式
  • text/xml:XML格式
  • image/gif:gif图片格式
  • image/jpeg:jpg图片格式
  • image/png:png图片格式

以application开头的媒体格式类型

  • application/xhtml+xml:XHTML格式
  • application/xml:XML数据格式
  • application/atom+xml:Atom XML聚合格式
  • application/json:JSON数据格式
  • application/pdf:pdf格式
  • application/msword:Word文档格式
  • application/octet-stream:二进制流数据(如常见的文件下载)
  • application/x-www-form-urlencoded:form属性中默认的encType,form表单数据被编码为key/value格式发送到服务器(表单默认的提交数据的格式)

响应

  一个完整的HTTP响应由状态码响应头集合响应主体组成

  • 状态码:XMLHttpRequest.status获取到(200,404)等,还可以通过statusText属性获取到(OK)
  • 响应头集合:XMLHttpRequest.getResponseHeader()和XMLHttpRequest.getAllResponseHeaders()获取响应头返回集但是过滤掉cookie头
  • 响应主体:XMLHttpRequest.responseText属性中得到文本形式,XMLHttpRequest.responseXML属性中获取document形式

 上一篇
上传文件 上传文件
上传文件form表单提交<form action="url" method="get" enctype="application/x-www-form-urlencoded"> <input type="text" na
2018-04-25
下一篇 
ajax ajax
ajaxajax流程第一步 创建XMLHttpRequest对象var request = new XMLHttpRequest(); 第二步 监听XMLHttpRequest对象里面的readystatechang// 用的属性监听 /
2018-04-24
  目录