web基础知识

1. HTTP协议特点
  1)client->服务器(要求request)有三个部分
a)请求行
b)请求头
c)请求的内容,假设没有。就是空白字符  
  2)服务端->client(响应response)有三部份
a)响应行
b)响应头
c)响应的内容,假设没有,就是空白字符  

2 HTTP请求头和响应头含义
  1)请求(client->服务端[request])
    GET(请求的方式) /books/java.html(请求的目标资源) HTTP/1.1(请求採用的协议和版本)
    Accept: */*(client能接收的资源类型)
    Accept-Language: en-us(client接收的语言类型)
    Connection: Keep-Alive(维护client和服务端的连接关系)
    Host: localhost:8080(连接的目标主机和port号)
    Referer: http://localhost/links.asp(从来于哪里)
    User-Agent: Mozilla/4.0(client版本的名字)
    Accept-Encoding: gzip, deflate(client能接收的压缩数据的类型)
    If-Modified-Since: Tue, 11 Jul 2000 18:23:51 GMT(缓存时间) 
    Cookie(client暂存服务端的信息)
    Date: Tue, 11 Jul 2000 18:23:51 GMT(client请求服务端的时间)
  2)响应(服务端->client[response])
    HTTP/1.1(响应採用的协议和版本) 200(状态码) OK(描写叙述信息)
    302(client请求服务端。但服务端没有相应的资源,服务端要client再次请求找其他的服务端,即client二次请求。重定向) 
    307(client请求服务端,但服务端没有相应的资源。服务端自行再次请求找其他的服务端,即client一次请求,转发)
    304(client请求服务端。此时client缓存中有。无需再从服务端下载新的内容,服务端叫client自行找缓存,优化)

    500(client请求的资源,服务端存在,但在运行时出错)

   404请求的资源找不到

    Location: http://www.baidu.com(服务端须要client訪问的页面路径) 
    Server:apache tomcat(服务端的Web服务端名)
    Content-Encoding: gzip(服务端可以发送压缩编码类型) 
    Content-Length: 80(服务端发送的压缩数据的长度) 
    Content-Language: zh-cn(服务端发送的语言类型) 
    Content-Type: text/html; charset=GB2312(服务端发送的类型及採用的编码方式)
    Last-Modified: Tue, 11 Jul 2000 18:23:51 GMT(服务端对该资源最后改动的时间)
    Refresh: 1;url=http://www.it315.org(服务端要求client1秒钟后,刷新。然后訪问指定的页面路径)
    Content-Disposition: attachment; filename=aaa.zip(服务端要求client下面载文件的方式打开该文件)
    Transfer-Encoding: chunked(分块传递数据到client)  
    Set-Cookie:SS=Q0=5Lb_nQ; path=/search(服务端发送到client的暂存数据)
    Expires: -1//3种(服务端禁止client缓存页面数据)
    Cache-Control: no-cache(服务端禁止client缓存页面数据)  
    Pragma: no-cache(服务端禁止client缓存页面数据)   
    Connection: close(1.0)/(1.1)Keep-Alive(维护client和服务端的连接关系)  
    Date: Tue, 11 Jul 2000 18:23:51 GMT(服务端响应client的时间)
  
  3)总结
    想让浏览器有何种行为,服务端仅仅能通过响应头的方式来设置
    想让server知道何种行为,浏览器仅仅能通过请求头的方式来设置
  


 3.经常使用的提交方式
    a)GET
特点:请求參数不管多少,都会根着URL后传递到服务端。以明文方式传递
     GET方式传递有限制大小。基本的是地址栏的数据有限制
     GET方式传递信息不安全
    b)POST
特点:
     请求參数不管多少,都不会根着URL后传递到服务端。而是以參数形式在请求体中传递到服务端
     POST方式传递无限制大小

     POST方式传递信息相对安全

4.浏览器与server的交互图


版权声明:本文博客原创文章。博客,未经同意,不得转载。

原文地址:https://www.cnblogs.com/mfrbuaa/p/4645234.html