HTTP:Hypertext transfer protocol
超文本传输协议
是一种详细规定了浏览器和Internet之间互相通信的规则

HTTP允许传输任意类型的数据对象,由Content-Type做标记
HTTP协议是无状态协议,无状态是指协议对于事务处理没有记忆能力,缺少
状态意味着如果后续处理需要前面的信息,必须重传

一次HTPP请求需要给服务端发送【请求方法】和【路径】

请求方法有:
GET:请求服务器指定的信息,并且返回实体
POST:把请求数据封装到请求体重,提交到服务器对特定的资源进行获取
HEAD
PUT
DELETE
OPTIONS
TRACE
MOVE
COPY

GET,POST的区别:
参考:
http://www.cnblogs.com/hyddd/archive/2009/03/31/1426026.html
http://zhidao.baidu.com/link?url=eTavETXJS1CifHJR3mr0Dtn2Ohsc4QNKNx4koUiQY1r2fpQPH5ppTaBuPX4qem8B_T0mcEps2Di1psZT7gYt9q

1.GET,POST,PUT,DELETE都能对服务器资源进行增删改查,而只是HTTP协议中建议使用对应请求方法进行对应操作而已
2.HTTP协议规定GET只能获取服务器中的资源,而POST可以创建/修改服务器中的资源
3.GET方法把请求参数以键值对的形式与URL一起发送到指定的服务器,
POST方法把请求的参数放入到HTTP头或者HTTP消息体中,向服务器请求资源
4.GET方法安全性较低,因为请求参数可见,并且对于请求的大小有限制,
POST方法安全性较高,请求数据不可见,并且请求大大小不受限制

HTTP协议规定了HTTP请求和HTTP响应的结构
参考:
http://blog.csdn.net/zhangliang_571/article/details/23508953
http://www.oschina.net/question/565065_81309
http://blog.csdn.net/kfanning/article/details/6062118

HTTP请求报文介绍:
一个HTTP请求报文由3部分组成:
请求行(Request Line)
请求头(Request Header)
请求体(请求数据)

请求行:
请求行由【请求方法】字段【URL】字段和【HTTP协议版本】3个字段组成
例如:
GET /index.html HTTP/1.1

请求头:
请求头由关键值对组成,每行一对。请求头定义了客户端请求的信息
例如:
User-Agent:发起请求的浏览器类型
Accept:客户端可识别的内容类型
Content-Type:
Content-Lenght:

空行:
最后一个请求头之后是一个空行,发送回车符和换行符,通知服务器以下不再有请求头

请求体:
请求数据不在GET方法中使用,而在POST方法中使用。

HTTP响应报文介绍:
一个HTTP响应报文由3部分组成:
状态行
消息头
响应体

状态行:
HTTP-VERSION Status-Code Reason-Phrase CRLF

HTTP-VERSION:表示服务器HTTP协议的版本
Status-Code:表示服务器发回的响应状态代码
Reason-Phrase:表示状态代码的文本描述

消息头:与请求头一致
响应体:与请求体一致

[计算机基础]HTTP协议学习笔记的更多相关文章

  1. HTTP协议学习笔记(一)

    HTTP协议学习笔记(一) 1.HTTP协议用于客户端和服务端之间的通信 客户端:请求访问文本或图像等资源的一端服务端:提供资源响应的一端 在两台计算机之间使用HTTP协议通信时,在一条通信线路上必定 ...

  2. HTTP协议学习笔记(四)

    HTTP协议学习笔记(四) 与 HTTP 协作的 Web 服务器 一台 Web 服务器可搭建多个独立域名的 Web 网站,也可作为通信路径上的中转服务器提升传输效率. 1.用单台虚拟主机实现多个域名 ...

  3. HTTP协议学习笔记(三)

    HTTP协议学习笔记(三) 1.状态码告知从服务器端返回的请求结果 状态码的职责是当客户端向服务端向服务端发送请求时,描述返回的请求结果.借助状态码,用户可以知道服务端是正常处理了请求,还是出现了错误 ...

  4. HTTP协议学习笔记(二)

    HTTP协议学习笔记(二) 1.HTTP报文 HTTP报文:用于HTTP协议交互的信息.请求报文:请求端(客户端)的HTTP报文叫做请求报文.响应报文:响应端(服务端)的HTTP报文叫做响应报文. H ...

  5. TCP/IP协议学习笔记

    计算机网络基础知识复习汇总:计算机网络基础知识复习 HTTP协议的解析:剖析 HTTP 协议 一个系列的解析文章: TCP/IP详解学习笔记(1)-- 概述 TCP/IP详解学习笔记(2)-- 数据链 ...

  6. RSA算法、SSL协议学习笔记

    最近学习计算机网络,涉及到SSL协议,我想起了去年密码学课程讲过的非对称加密RSA算法,结合阮老师的博客,写写学习笔记,这里再回忆一下. RSA算法 RSA算法是一种非对称密码算法,所谓非对称,就是指 ...

  7. 《Python编程:从入门到实践》基础知识部分学习笔记整理

    简介 此笔记为<Python编程:从入门到实践>中前 11 章的基础知识部分的学习笔记,不包含后面的项目部分. 书籍评价 从系统学习 Python 的角度,不推荐此书,个人更推荐使用< ...

  8. 网络协议学习笔记(二)物理层到MAC层,交换机和VLAN,ICMP与ping原理

    概述 之前网络学习笔记主要讲解了IP的诞生,或者说整个操作系统的诞生,一旦有了IP,就可以在网络的环境里和其他的机器展开沟通了.现在开始给大家讲解关于网络底层的相关知识. 从物理层到MAC层:如何在宿 ...

  9. 第1课_Java基础知识【学习笔记】

    摘要:韦东山android视频学习笔记 一.android系统的基本框架如图一所示,应用程序是用java编写的,底层驱动是用C代码写的,java与C怎么连接在一起主要是通过本地服务.android系统 ...

随机推荐

  1. CCIE路由实验(5) -- BGP负载均衡

    enableconf tno ip do loenable pass ciscoline con 0logg syncexec-t 0 0exitline vty 0 4pass ciscologg ...

  2. EFM32在使用IAR开发环境配置ICf文件以及指定程序存储地址空间

    EFM32在IAR开发环境下指定代码,数据的存储空间 为了便于后续的项目升级,管理,需要对代码,数据的存储空间加以设定,也在网上找下相关的资料,笔者水平有限, 如下内容不一定完全正确,如有错误之后,还 ...

  3. VDI转vmdk(VirtualBox与VMware硬盘格式转换)[转]

    VirtualBox用了一段时间,感觉没想像中那么的好.虽然设置里可以分配多CPU,但是分配多CPU后经常系统挂掉.整体感觉不够稳定,但它也有好处就是开源免费.但经常挂机总不能一直使用它,索性转到Vm ...

  4. LWP::UserAgent - Web user agent class Web 用户agent 类:

    LWPUserAgent: LWP::UserAgent - Web user agent class Web 用户agent 类: 概述: require LWP::UserAgent; my $u ...

  5. One simple health check for oracle with sql

    There are some sqls which is used for check the oracle database's health condition. ------numbers of ...

  6. [置顶] 浅谈Android的资源编译过程

    Android APK 一.APK的结构以及生成 APK是Android Package的缩写,即Android application package文件或Android安装包.每个要安装到Andr ...

  7. QT中的pro文件的编写

    原地址:http://blog.csdn.net/fjb2080/article/details/4833666 我们在编译QT的工程的时候,一般都会让qmake自动生成,但有时我们需要定制我们的工程 ...

  8. Qt MinGW 使用联合编译IncrediBuild

    联合编译工具IncrediBuild提供了接口,以使得可以使用网格来处理各种任务,而不仅仅是VS的联合编译,文档地址:http://www.incredibuild.com/webhelp/xge_h ...

  9. 深入浅出Hadoop Mahout数据挖掘实战(算法分析、项目实战、中文分词技术)

    Mahout简介 Mahout 是 Apache Software Foundation(ASF) 旗下的一个开源项目, 提供一些可扩展的机器学习领域经典算法的实现,旨在帮助开发人员更加方便快捷地创建 ...

  10. css3圆角代码

    div+css3普通圆角代码示例 <style type="text/css"> #round { width:200px; height:100px; margin: ...