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的插件

最新文章

  1. Java对象访问 类的静态变量
  2. [INS-41112] Specified network interface doesnt maintain connectivi
  3. java 访问修饰符
  4. hdu 1713 相遇周期
  5. 《C和指针》章节后编程练习解答参考——6.2
  6. Memento 备忘录 快照模式
  7. #1042 - Can't get hostname for your address
  8. Html5移动端页面自适应百分比布局
  9. java Socket实现简单在线聊天(二)
  10. 【Python3爬虫】百度一下,坑死你?
  11. Spring Boot druid监控页添加登录访问权限(用户名+密码)
  12. Web前端 HTML知识总结
  13. Perl解除引用:从引用还原到数据对象
  14. java 8 日期函数
  15. C语言100个经典的算法
  16. Spark 论文篇-Spark:工作组上的集群计算的框架(中英双语)
  17. PostgreSQL 扩展开发基础教程
  18. 《如何阅读it技术书》课堂笔记——51cto
  19. Windows 常识大全【all】
  20. 求含有n个因子的最小正整数(n<=1000000)

热门文章

  1. 运营商 WLAN
  2. tf.nn.softmax(logits,name=None)
  3. 洛谷—— P1926 小书童——刷题大军
  4. [Python] Generating random numbers using numpy lib
  5. Mahout-HashMap的进化版FastByIdMap
  6. To new is C++; To malloc is C; To mix them is sin (混淆C++中的new和C中的malloc是一种犯罪)
  7. 惊叹计算机运行速度的提升---以n Queens 问题为例
  8. mahout处理路透社语料步骤,转换成须要的格式
  9. 学password学一定得学程序
  10. IComparable接口实现自定义类型的排序