作者:禅与计算机程序设计艺术
1.简介
HTTP(Hypertext Transfer Protocol)是互联网上用于传输超文本文档、图像、音频等内容的一套标准通讯协议。它是一个应用层协议,由请求消息和响应消息组成,并基于TCP/IP通信协议。由于其简洁、灵活、易于实现的特点,HTTP被广泛使用。它经常与HTML或XML一起使用,为万维网的快速开发与普及提供了坚实的基础。通过阅读本文,可以了解HTTP协议的工作原理,掌握HTTP相关技能。
2.协议定义
2.1 协议结构
HTTP协议由请求报文(request message)和响应报文(response message)组成。在请求消息中,客户端向服务器发送请求信息,如需要访问的资源路径、所需参数等;在相应消息中,服务器对请求作出响应,返回结果数据或者错误提示。
一个完整的HTTP事务包括:
- 请求行:请求方法、URI、HTTP版本号
- 请求头部字段:各种属性,如语言环境、编码方式、认证信息等
- 请求正文:可能是POST提交的数据或表单数据,也可能为空
- 空行
- 响应行:HTTP版本号、状态码、状态描述
- 响应头部字段:同样是各种属性,例如:Content-Type、Content-Length等
- 响应正文:即服务端返回的页面内容,可能是网页源代码、图片、音频、视频文件等