天天看点

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的交互图

web基础知识
下一篇: yii基础知识-