网络传输协议(http协议)


Posted in Javascript onNovember 18, 2016

概述:指服务器和客户端间进行通信时的约束和规范,客户端与服务端的数据交互并不是杂乱无章的,需要遵照(基于)一定的规范进行

常见的协议:

a) HTTP、HTTPS 超文本传输协议

b) FTP 文件传输协议

c) SMTP 简单邮件传输协议

本文主要介绍http超文本传输协议。

1、HTTP协议

即超文本传输协议,网站是基于HTTP协议的,例如网站的图片、CSS、JS等都是基于HTTP协议进行传输的。HTTP协议是由从客户机到服务器的请求(Request)和从服务器到客户机的响应(Response)进行了约束和规范

常用的请求方式有:GET, POST, PUT, DELETE

2、请求-请求报文:

a)    请求由客户端发起,其规范格式为:请求行、请求头、请求主体。如:

b)     请求报文行: 由请求方式、请求URL和协议版本构成

网络传输协议(http协议)

c)     请求报文头

Host:localhost请求的主机
Cache-Control:max-age=0控制缓存(no-cache| no-store)
Accept:*/* 接受的文档MIME类型
User-Agent:向访问网站提供你所使用的浏览器类型、操作系统及版本、CPU 类型、浏览器渲染引擎、浏览器语言、浏览器插件等信息的标识. 浏览器UA 字串的标准格式为: 浏览器标识 (操作系统标识; 加密等级标识; 浏览器语言) 渲染引擎标识 版本信息
Referer:从哪个URL跳转过来的
Accept-Encoding:可接受的压缩格式

d)     请求报文体:即传递给服务端的数据

注:当以post形式提交表单的时候,请求头里会设置Content-Type: application/x-www-form-urlencoded,而当以get形式请求时不需要这种设置

3、响应-响应报文 :

a) 响应由服务器发出,其规范格式为:状态行、响应头、响应主体

网络传输协议(http协议)

b) 响应头:

Date:响应时间
Server:服务器信息
Content-Length:响应主体长度
Content-Type:响应资源的MIME类型

c) 响应主体:即服务端返回给客户端的内容

d) 状态码:

网络传输协议(http协议)

常见的状态码有:200---服务器成功返回网页、304---文档未修改、403---没有权限、404---请求网页不存在、500---服务器错误、503---服务不可用
说明:客户端与服务器在进行数据传输的时候都是以字节形式进行的,可以理解成是以文本形式传输,这时浏览器就需要明确知道该怎么样来解析这些文本形式的数据,MIME就是明确告知浏览器该如何来处理

 对于http协议还有很多的知识点,本文仅介绍其传输的大概过程。学习并了解其组成,是为了更好的理解 ajax。详情请看---ajax的概述和实现过程,希望对大家有所帮助!

Javascript 相关文章推荐
从URL中提取参数与将对象转换为URL查询参数的实现代码
Jan 12 Javascript
JavaScript 更严格的相等 [译]
Sep 20 Javascript
javascript 使用 NodeList需要注意的问题
Mar 04 Javascript
Jquery实现由下向上展开效果的例子
Dec 08 Javascript
深入理解JavaScript系列(21):S.O.L.I.D五大原则之接口隔离原则ISP详解
Mar 05 Javascript
js 连续赋值的简单实现
Jun 13 Javascript
关于javascript原型的修改与重写(覆盖)差别详解
Aug 31 Javascript
jQuery checkbox选中问题之prop与attr注意点分析
Nov 15 Javascript
详解vue2.0脚手架的webpack 配置文件分析
May 27 Javascript
Vue.js在数组中插入重复数据的实现代码
Nov 17 Javascript
从零开始用electron手撸一个截屏工具的示例代码
Oct 10 Javascript
Vue.js中v-for指令的用法介绍
Mar 13 Vue.js
基于JS组件实现拖动滑块验证功能(代码分享)
Nov 18 #Javascript
Ajax的概述与实现过程
Nov 18 #Javascript
简单谈谈ES6的六个小特性
Nov 18 #Javascript
jQuery post数据至ashx实例详解
Nov 18 #Javascript
JS实现点击网页判断是否安装app并打开否则跳转app store
Nov 18 #Javascript
基于jQuery的checkbox全选问题分析
Nov 18 #Javascript
JavaScript动态数量的文件上传控件
Nov 18 #Javascript
You might like
将兴奋、喜悦和坎加斯带到戴安娜:亚马逊公主
2020/03/03 欧美动漫
基于mysql的bbs设计(三)
2006/10/09 PHP
PHP6 mysql连接方式说明
2009/02/09 PHP
php处理restful请求的路由类分享
2014/02/27 PHP
php+ajax实时刷新简单实例
2015/02/25 PHP
在win系统安装配置 Memcached for PHP 5.3 图文教程
2015/03/03 PHP
[原创]PHP实现SQL语句格式化功能的方法
2017/07/28 PHP
javascript 限制输入和粘贴(IE,firefox测试通过)
2008/11/14 Javascript
不同浏览器的怪癖小结
2010/07/11 Javascript
js 上传图片预览问题
2010/12/06 Javascript
浅谈JavaScript实现面向对象中的类
2014/12/09 Javascript
学习JavaScript设计模式(封装)
2015/11/26 Javascript
js实现滚动条滚动到页面底部继续加载
2015/12/19 Javascript
javascript html5实现表单验证
2016/03/01 Javascript
使用 stylelint检查CSS_StyleLint
2016/04/28 Javascript
一个仿微博登陆邮箱提示框js开发案例
2016/07/28 Javascript
ES6教程之for循环和Map,Set用法分析
2017/04/10 Javascript
简单实现jquery隔行变色
2017/11/09 jQuery
vue中使用sessionStorage记住密码功能
2018/07/24 Javascript
jQuery 隐藏/显示效果函数用法实例分析
2020/05/20 jQuery
django启动uwsgi报错的解决方法
2018/04/08 Python
利用pandas合并多个excel的方法示例
2019/10/10 Python
深入浅析Python代码规范性检测
2020/07/31 Python
tensorflow2.0教程之Keras快速入门
2021/02/20 Python
HTML5 实战PHP之Web页面表单设计
2011/10/09 HTML / CSS
Finishline官网:美国一家领先的运动品牌鞋类、服装零售商
2016/07/20 全球购物
Internal修饰符有什么含义
2013/07/10 面试题
Delphi工程师笔试题
2013/09/21 面试题
商务英语应届生自我鉴定
2013/12/08 职场文书
园林技术个人的自我评价
2014/02/15 职场文书
公证委托书模板
2014/04/03 职场文书
质量标语大全
2014/06/12 职场文书
护理专业毕业生自荐信
2014/06/15 职场文书
高中班主任培训心得体会
2016/01/07 职场文书
python数字类型和占位符详情
2022/03/13 Python
PostgreSQL并行计算算法及参数强制并行度设置方法
2022/04/06 PostgreSQL