网络传输协议(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 相关文章推荐
5 cool javascript apps
Mar 24 Javascript
[原创]用javascript实现检测指定目录是否存在的方法
Jan 12 Javascript
JS下拉缓冲菜单示例代码
Aug 30 Javascript
页面定时刷新(1秒刷新一次)
Nov 22 Javascript
javascript中html字符串转化为jquery dom对象的方法
Aug 27 Javascript
Node.js中流(stream)的使用方法示例
Jul 16 Javascript
微信小程序用户信息encryptedData详解
Aug 24 Javascript
Vue CLI3移动端适配(px2rem或postcss-plugin-px2rem)
Apr 27 Javascript
vue.js实现h5机器人聊天(测试版)
Jul 16 Javascript
JavaScript 事件代理需要注意的地方
Sep 08 Javascript
基于Vue3.0开发轻量级手机端弹框组件V3Popup的场景分析
Dec 30 Vue.js
使用Cargo工具高效创建Rust项目
Aug 14 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
本地计算机无法启动Apache故障处理
2014/08/08 PHP
php中实现获取随机数组列表的自定义函数
2015/04/02 PHP
PHP中获取文件创建日期、修改日期、访问时间的方法
2016/11/05 PHP
php数据库的增删改查 php与javascript之间的交互
2017/08/31 PHP
PHP实现防止表单重复提交功能【基于token验证】
2018/05/24 PHP
php生成HTML文件的类方法
2019/10/11 PHP
Laravel配合jwt使用的方法实例
2020/10/25 PHP
js各种验证文本框输入格式(正则表达式)
2010/10/22 Javascript
jQuery中使用了document和window哪些属性和方法小结
2011/09/13 Javascript
js的表单操作 简单计算器
2011/12/29 Javascript
jquery 单引号和双引号的区别及使用注意
2013/07/31 Javascript
将中国标准时间转换成标准格式的代码
2014/03/20 Javascript
Js+Ajax,Get和Post在使用上的区别小结
2016/06/08 Javascript
Javascript中indexOf()和lastIndexOf应用方法实例
2016/08/24 Javascript
BootStrap实现手机端轮播图左右滑动事件
2016/10/13 Javascript
详解使用Vue Router导航钩子与Vuex来实现后退状态保存
2017/09/11 Javascript
js+html获取系统当前时间
2017/11/10 Javascript
NodeJS实现视频转码的示例代码
2017/11/18 NodeJs
详解webpack打包nodejs项目(前端代码)
2018/09/19 NodeJs
JS学习笔记之贪吃蛇小游戏demo实例详解
2019/05/29 Javascript
[03:40]DOTA2亚洲邀请赛小组赛第二日 赛事回顾
2015/01/31 DOTA
在Python中操作字符串之startswith()方法的使用
2015/05/20 Python
对于Python中RawString的理解介绍
2016/07/07 Python
Python socket网络编程TCP/IP服务器与客户端通信
2017/01/05 Python
Django中提供的6种缓存方式详解
2019/08/05 Python
Python unittest基本使用方法代码实例
2020/06/29 Python
美国知名的女性服饰品牌:LOFT(洛芙特)
2016/08/05 全球购物
小天鹅官方商城:LittleSwan
2017/06/16 全球购物
Hotels.com印度:酒店预订
2019/05/11 全球购物
extern是什么意思
2016/03/10 面试题
String、StringBuffer、StringBuilder有区别
2015/09/18 面试题
会计自我鉴定范文
2013/10/06 职场文书
汽修专业学生自我鉴定
2013/11/16 职场文书
财政局长自荐信范文
2013/12/22 职场文书
学生会竞选演讲稿
2014/04/24 职场文书
Python 正则模块详情
2021/11/02 Python