zoukankan      html  css  js  c++  java
  • web知识—协议

             web使用超文本传输协议(HTTP,HyperText Transfer Protocol)进行通信。http在1990年左右出现,现在有0.9/1.0/1.1三个版本。在早期的互联网中的一些协议只能传输纯文本或ascii,而http从字面意思可以知道它能承载超文本。

    一般先由客户端浏览器发起请求:

    请求报文格式

         请求行:请求方法         统一资源标识符(URI)       http协议版本
         请求头部
         请求数据

    常见的请求方法:

         GET: 请求URI所表示的资源
         POST:请求提交数据到服务器
         PUT: 把文件上传到URI表示的路径
         DELETE:请求删除URI表示的文件
         HEAD:请求URI表示的资源的头部
         OPTIONS:请求服务器性能信息
         TRACE:远程诊断服务器
    统一资源标识符格式: 协议://FQDN:端口/资源路径

    协议版本:http0.9/1.0/1.1

    请求头部

         Accept:可以接受的资源类型
         Accept-Charset:可接受的字符编码
         Accept-Encoding:解压缩的格式
         Accept-Language:浏览器可接受的语言
         Connection:是否要持久连接,Keep-Alive或使用http1.1表示持久连接
         Content-Length:请求消息正文长度
         Host:初始URI的主机和端口
         User-Agent:客户端系统类型,浏览器类型
    服务器响应报文格式: 
         状态行:http协议版本       响应状态码        状态码描述
         响应包头:
         响应数据:
    常见的响应状态码:
         100:请求的部分已经被接受,客户端继续发送剩下的部分
         101:服务器理解了客户端的请求,但是让客户端使用不同的协议来访问
         200:请求成功
         201:请求已建立
         202:请求尚未被处理,可能被处理也可能被拒绝
         203:请求已经被处理,但是要响应的内容不在本地
         204:请求被处理,但是不需要响应什么内容
         301:永久移动到新位置
         302:临时移动
         400:错误请求,服务器不能理解的语法
         401:要身份验证
         403:拒绝请求
         404:服务器找不到请求的网页
         405:禁止该种方法
         500:服务器内部错误
         501:服务器无法识别该请求
         502:代理服务器,无法获取真实服务器的响应
         503:服务器暂时不可用
         504:代理服务器,没有将请求发到真实服务器
         505:服务器不支持请求中所用的http协议版本     
    
    响应头部:
         Accept-Ranges:服务器是否支持指定范围请求,及分段请求
         Age:从服务器到代理缓存形成的估算时间
         Allow:指定请求方法
         Cache-Control:可以缓存的类型
         Content-Encoding:服务器支持的解压缩格式
         Content-Language:响应的语言
         Content-Length:响应的长度
         Content-Location:请求资源可以用另一个地址
         Content-Type:返回的资源类型
         Date:原始服务器发出的时间
         Server:服务器软件名称
         Set-Cookie:设置Cookie

    常见的浏览器:IE,Chrome,Firefox,Opera等;常见web服务器:Apache,nginx,tomcat,IIS等

    静态网页:html、css、和一些静态图片

    动态网页:

             1、服务器通过执行程序将数据读写到数据库,处理完后将结果传给客户端,“动”指的是数据库里的数据,而这些程序可以是PHP、JSP、Python、ASP 、Perl 等                 

             2、服务器将程序代码(JavaScript)发送到客户端,客户端浏览器会执行这段程序

             3、Flash动画,在客户端有能执行Flash的插件










  • 相关阅读:
    apache性能测试工具
    redis和memcacahe、mongoDB的区别
    redis 安装
    redis介绍
    svn基本命令
    变量
    redis持久化有几种.如何配置
    Sundy_Android开发深入浅出和高级开发视频教程
    VC++ MFC类库基础(55讲全)
    从C++起步到MFC实战VC++软件工程师高端培训 视频保存在 播音员的网盘中
  • 原文地址:https://www.cnblogs.com/imlifelong/p/10651322.html
Copyright © 2011-2022 走看看