网络传输协议(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 相关文章推荐
javascript读取xml
Nov 04 Javascript
js 图片轮播(5张图片)
Dec 30 Javascript
JavaScript定义类或函数的几种方式小结
Jan 09 Javascript
jquery改变disabled的boolean状态的三种方法
Dec 13 Javascript
js实现按Ctrl+Enter发送效果
Sep 18 Javascript
jquery实现倒计时功能
Dec 28 Javascript
浅析jquery unbind()方法移除元素绑定的事件
May 24 Javascript
js省市区级联查询(插件版&无插件版)
Mar 21 Javascript
js+canvas实现动态吃豆人效果
Mar 22 Javascript
浅谈在Vue-cli里基于axios封装复用请求
Nov 06 Javascript
你可能从未使用过的11+个JavaScript特性(小结)
Jan 08 Javascript
Vue 中使用 typescript的方法详解
Feb 17 Javascript
基于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
PHP函数utf8转gb2312编码
2006/12/21 PHP
Laravel中扩展Memcached缓存驱动实现使用阿里云OCS缓存
2015/02/10 PHP
php读取torrent种子文件内容的方法(测试可用)
2016/05/03 PHP
总结PHP中数值计算的注意事项
2016/08/14 PHP
php使用GD2绘制几何图形示例
2017/02/15 PHP
在TP5数据库中四个字段实现无限分类的示例
2019/10/18 PHP
Javascript技术技巧大全(五)
2007/01/22 Javascript
使用jQuery同时控制四张图片的伸缩实现代码
2013/04/19 Javascript
Jquery 表单验证类介绍与实例
2013/06/09 Javascript
js监听键盘事件示例代码
2013/07/26 Javascript
详解JavaScript中void语句的使用
2015/06/04 Javascript
jquery日历插件datepicker用法分析
2016/01/22 Javascript
jQuery弹出层后禁用底部滚动条(移动端关闭回到原位置)
2016/08/29 Javascript
ES6通过babel转码使用webpack使用import关键字
2016/12/13 Javascript
jQuery插件Echarts实现的双轴图效果示例【附demo源码下载】
2017/03/04 Javascript
基于bootstrap实现多个下拉框同时搜索功能
2017/07/19 Javascript
vue实现微信分享功能
2018/11/28 Javascript
webpack4 从零学习常用配置(小结)
2019/05/28 Javascript
eslint+prettier统一代码风格的实现方法
2020/07/22 Javascript
利用Python脚本在Nginx和uwsgi上部署MoinMoin的教程
2015/05/05 Python
Python3控制路由器——使用requests重启极路由.py
2016/05/11 Python
学生信息管理系统python版
2018/10/17 Python
python虚拟环境迁移方法
2019/01/03 Python
python requests使用socks5的例子
2019/07/25 Python
在tensorflow下利用plt画论文中loss,acc等曲线图实例
2020/06/15 Python
Python字符串格式化常用手段及注意事项
2020/06/17 Python
通过实例解析Python文件操作实现步骤
2020/09/21 Python
通过Django Admin+HttpRunner1.5.6实现简易接口测试平台
2020/11/11 Python
详解CSS3 弹性布局快速入门
2019/06/06 HTML / CSS
html5 postMessage前端跨域并前端监听的方法示例
2018/11/01 HTML / CSS
自我评价范文
2013/12/22 职场文书
代理班主任的自我评价
2014/02/04 职场文书
《草原的早晨》教学反思
2014/04/08 职场文书
市级青年文明号申报材料
2014/05/26 职场文书
尊老爱幼演讲稿
2014/09/04 职场文书
2019经典广告词集锦!
2019/07/02 职场文书