HTTP:HyperTextTransferProtocol是一种超文本传输协议,协议用在本地浏览器和服务器之间通信

HTTP基于TCP/IP传输数据,如图片,HTML文件

1、HTTP协议特点:

无连接:每次连接只处理一次请求,服务器完成客户端的请求,收到客户端应答,就断开连接

无状态:对事务没有记忆能力,操作后续工作不需要前面的信息

2、HTTP协议通信:本地浏览器发出请求,HTTP服务器接收到请求,通过CGI Program 与数据库通信

3、url: uniform resources location(统一资源定位符)

比如:http://www.baidu.com:80/query/2015/10/9/?keyword=美女&;type=图片

协议://主机号:端口/路径/?参数

协议:http

主机号:www.baidu.com

端口号:80

路径:query/2015/10/9

参数:keyword=美女&;type=图片

uri:uniform resouces Identifier(统一资源标识符),uri是url的超集

4、HTTP请求

请求内容包括:请求行、请求头、请求空行和请求数据

5、HTTP请求方法

GET: 请求指定的页面信息,并返回实体主体
HEAD: 只请求页面的首部
POST: 请求服务器接受所指定的文档作为对所标识的URI的新的从属实体
PUT: 从客户端向服务器传送的数据取代指定的文档的内容
DELETE: 请求服务器删除指定的页面

CONNECT: 保留将来使用

注:GET 和 POST比较常见

GET请求将提交的数据放置在HTTP请求协议头中,POST提交的数据则放在实体数据中

6、HTTP响应

响应内容:响应行、响应头、响应正文

响应头:

public: 可以用cache内容回应给任何用户
private: 只能用缓存回应先前请求该内容的那个用户
no-cache: 可以缓存,但是只有跟web服务器验证了其有效后,才能返回给客户端
max-age: 本响应包含的对象的过期时间
no-store:不允许缓存

7、响应状态码

常见响应状态码:

200:客户端请求成功

400 :客户端请求有语法错误,不能被服务器所理解

401:请求未经授权,这个状态码必须和WWW-Athenticate包头域一起使用

403:服务器收到请求,但拒绝提供服务

404:请求资源不存在,url错误

500:服务器发生不可预期的错误

503:服务器当前不能处理客户端的请求,一段时间后可能回复正常

参考博客:https://www.cnblogs.com/syw20170419/p/9591275.html

HTTP协议的学习总结的更多相关文章

  1. 【SIP协议】学习初学笔记

    1.SIP这玩意是怎么走来和如何构建的? 通俗的说,SIP就是一个轻量级信令协议,它可以作为音频.视频.及时信息的信令. 说到SIP是怎么出来的就要提H.323,而提到这个标准由不得不提到ITU-T, ...

  2. TCP/IP协议组学习笔记

    TCP/IP协议族学习笔记: 一.基础概念: (1)TCP(Transmission Control Protocol) 传输控制协议. (2)IP(Internet Protocol)网际协议.IP ...

  3. 使用wireshark 抓取 http https tcp ip 协议进行学习

    使用wireshark 抓取 http https tcp ip 协议进行学习 前言 本节使用wireshark工具抓包学习tcp ip http 协议 1. tcp 1.1 tcp三次握手在wire ...

  4. LFI、RFI、PHP封装协议安全问题学习

    本文希望分享一些本地文件包含.远程文件包含.PHP的封装协议(伪协议)中可能包含的漏洞 相关学习资料 http://www.ibm.com/developerworks/cn/java/j-lo-lo ...

  5. TCP/IP协议原理学习笔记

    昨天学习了杨宁老师的TCP/IP协议原理第一讲和第二讲,主要介绍了OSI模型,整理如下: OSI是open system innerconnection的简称,即开放式系统互联参考模型,它把网络协议从 ...

  6. 关于wcf,webservice,webapi或者其他服务或者接口有什么区别 WCF、WebAPI、WebService之间的区别 【转载】HTTP和SOAP完全就是两个不同的协议 WebService学习总结(一)——WebService的相关概念

    wcf,webservice采用的是rpc协议,这个协议很复杂,所以每次要传递.要校验的内容也很复杂,别看我们用的很简单,但实际是frame帮我们做掉了rpc生成.解析的事情webapi遵循是rest ...

  7. HTTP协议从入门到大牛,初识HTTP协议(学习笔记)

    HTTP数据传输协议 当访问一个网页时,浏览器会向服务器发起一条HTTP请求,接着服务器会去寻找相应的资源,如果请求成功,就会把这个对象,对象类型,对象长度以及其他的信息放在HTTP响应中,发送给客户 ...

  8. Websocket协议的学习、调研和实现

    本文章同时发在 cpper.info. 1. websocket是什么 Websocket是html5提出的一个协议规范,参考rfc6455. websocket约定了一个通信的规范,通过一个握手的机 ...

  9. Http协议简单学习笔记

    HTTP是hypertext transfer protocol(超文本传输协议)的简写,它是TCP/IP协议的一个应用层协议,用于定义WEB浏览器与WEB服务器之间交换数据的过程. 在HTTP1.0 ...

  10. 关于HTTP协议的学习

    HTTP(HyperTextTransferProtocol)是超文本传输协议的缩写,它用于传送WWW方式的数据,关于HTTP 协议的详细内容请参考RFC2616.HTTP协议采用了请求/响应模型.客 ...

随机推荐

  1. A. Reorder the Array

    You are given an array of integers. Vasya can permute (change order) its integers. He wants to do it ...

  2. Unity C# Scoket Thread

    关于 Scoket和Thread 也没什么要说的,网上有很多资料.但是需要注意的是 Scoket和Thread 都需要创建和杀死.不然一定会造成程序假死.好了上代码 服务器: using System ...

  3. 负margin在页面布局中的应用

    关于负margin的原理建议大家看看这篇文章:http://www.cnblogs.com/2050/archive/2012/08/13/2636467.html#2457812 一. 左右列固定, ...

  4. 单片机基础——使用GPIO输出点亮一个LED灯

    1. 准备工作 硬件准备 开发板首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接. 软件准备 需要安装好Keil - MDK及芯片对应的包,以便编译和下载生成的代码,可参考MDK安装教程 ...

  5. MySQL的万字总结(缓存,索引,Explain,事务,redo日志等)

    hello,小伙伴们,好久不见,MySQL系列停更了差不多两个月了,也有小伙伴问我为啥不更了呢?其实我去看了MySQL的全集,准备憋个大招,更新篇长文(我不会告诉你是因为我懒的). 好了,话不多说,直 ...

  6. 小白学 Python 数据分析(16):Matplotlib(一)坐标系

    人生苦短,我用 Python 前文传送门: 小白学 Python 数据分析(1):数据分析基础 小白学 Python 数据分析(2):Pandas (一)概述 小白学 Python 数据分析(3):P ...

  7. MyBatis框架——延迟加载

    延迟加载也叫惰性加载或者懒加载,使⽤延迟是为了提⾼程序的运⾏效率,具体是通过尽量少执⾏ SQL 语句来提升效率.Java 程序与数据库的交互频率越低越好,MyBatis 提供的延迟加载功能就可以做到这 ...

  8. Error: java.net.ConnectException: Call From tuge1/192.168.40.100 to tuge2:8032 failed on connection exception

    先看解决方案,再看唠嗑,唠嗑可以忽略. 解决方案: 使用start yarn.sh启动yarn就可以了. 唠嗑: 今天学习Spark基于Yarn部署.然后总以为Yarn是让Spark启动的,提交程序的 ...

  9. Servlet(简介,请求参数,页面跳转,生命周期,创建,配置,ServletContext,线程)

    1.Servlet简介 servlet是java servlet的简称,称为小服务程序或服务连接器,用Java编写的服务器端程序, 主要功能在于交互式浏览和修改数据,生成动态的web内容 服务端运行的 ...

  10. Delphi10.3的DBGrid中memo类型显示内容而不是(WIDEMEMO)

    1]连接好数据库,并显示: 2]增加所有字段: 3]添加事件: //    FDQuery1UserName: TWideMemoField; procedure TForm1.FDQuery1Use ...