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的插件
web知识—协议的更多相关文章
- Web微信协议
[文档]Web微信协议 1.登录 1.1 获取uuid(get) 请求 https://login.wx.qq.com/jslogin?appid=wx782c26e4c19acffb&red ...
- Java Web知识梳理
今天给内部做了个培训,貌似搞错了对象,不该对新人讲这么原理性的东西. anyway,还是放上来吧,不知道有没有人能理清其中的逻辑 ^ _ ^ 问题:为什么要用tomcattomcat: servlet ...
- Java Web ——http协议响应报文
HTTP 响应报文 HTTP 响应报文由状态行.响应头部.空行 和 响应包体 4 个部分组成,如下图所示: 下面对响应报文格式进行简单的分析: 状态行:状态行由 HTTP 协议版本字段.状态码和状态码 ...
- 【读书笔记】iOS网络-Web Service协议与风格
协议指的是在与其它系统交换结构化信息时所要遵循的一套格式,过程与规则.此外,协议定义了在传输过程中所要使用的数据格式.这样,接收系统就能正确地解释结构化信息并做出正应的回应. 1,简单对象访问协议. ...
- WEB相关协议
1.数据链路层 2.网络层 3.传输层 4.应用层 ,其中ip是在第二层网络层中,tcp是在第3层传输层中,Internet体系结构最重要的是tcp/ip协议,是实现互联网络连接性和互操作性的关键,它 ...
- web前端利用HSTS(新的Web安全协议HTTP Strict Transport Security)漏洞的超级Cookie(HSTS Super Cookie)
web前端如果想实现cookie跨站点,跨浏览器,清除浏览器cookie该cookie也不会被删除这似乎有点难,下面的教程让你完全摆脱document.cookie 1.服务器端设置HSTS 如PHP ...
- web网络协议
一.OSI七层模型 OSI参考模型是国际标准化组织ISO(International Standards Organization )制定的模型,把计算机与计算机之间的通信分成七个互相连接的协议层 ...
- 【读书笔记】iOS-网络-Web Service协议与风格
协议指的是在与其它系统交换结构化信息时所要遵循的一套格式,过程与规则.此外,协议定义了在传输过程中所要使用的数据格式.这样,接收系统就能正确地解释结构化信息并做出正应的回应. 1,简单对象访问协议. ...
- appium 3-4-1034等待、日志、性能数据、xpath定位、web driver协议
1.等待 1.1精确等待 sleep 不推荐 @Test public void testWait1() throws InterruptedException{ day_time(); Thread ...
随机推荐
- 使用WinNTSetup安装win10时提示efi part有红叉(win10安装UEFI系统安装)
1.装载ImDisk虚拟磁盘 2.格式化硬盘 *格式化时注意”创建新ESP分区 3.使用 WinNTSetup 选择win10安装程序 *1. “BOOTMGR PBR "后有感叹号不用管, ...
- 运行npm start vue.js项目 出现 npm ERR! missing script: start 错误
npm ERR! missing script: start 错误 有可能缺少依赖包,运行nmp install安装依赖(一般都依赖很多包,过程有点慢),安装完后发现多一个 node_modules文 ...
- ln---创建链接
ln命令用来为文件创件连接,连接类型分为硬连接和符号连接两种,默认的连接类型是硬连接.如果要创建符号连接必须使用"-s"选项. 注意:符号链接文件不是一个独立的文件,它的许多属性依 ...
- Hadoop学习总结(1)——大数据以及Hadoop相关概念介绍
一.大数据的基本概念 1.1.什么是大数据 大数据指的就是要处理的数据是TB级别以上的数据.大数据是以TB级别起步的.在计算机当中,存放到硬盘上面的文件都会占用一定的存储空间,例如: 文件占用的存储空 ...
- 修改cloudera manager的端口号
最近想在测试机装一个hadoop测试集群debug玩玩,然后就用cloudera manager装吧 这回使用rpm安装失败了,在网上搜到Cloudera Manager 5和CDH5离线安装说需要用 ...
- 最全面的AndroidStudio配置指南总结-包括护眼模式
使用AndroidStudio开发APP已有半年多的时间了,从刚开始的不习惯到慢慢适应再到逐渐喜欢上AndroidStudio,中间的过程颇有一番曲折,现在把自己对AndroidStudio的配置心得 ...
- 当我们谈论Erlang Maps时,我们谈论什么 Part 1
Erlang 添加 Maps数据类型并非非常突然,由于这个提议已经进行了2~3年之久,仅仅只是Joe Armstrong老爷子近期一篇文章Big changes to Erlang掀起不小了 ...
- DNS隧道和工具
DNS Tunneling及相关实现 转自:http://www.freebuf.com/sectool/112076.html DNS Tunneling,是隐蔽信道的一种,通过将其他协议封装在DN ...
- Mac OSX 平台安装 MongoDB
Mac OSX 平台安装 MongoDB MongoDB 提供了 OSX 平台上 64 位的安装包,你可以在官网下载安装包. 下载地址:https://www.mongodb.com/download ...
- DispatcherServlet 前置控制器
1.DispatcherServlet作用 DispatcherServlet是前端控制器设计模式的实现,提供Spring Web MVC的集中访问点,而且负责职责的分派,而且与Spring IoC容 ...