HTTP传送协议
HTTP传送协议——学习笔记
- HTTP数据传输格式

基本格式为:
- 请求或应答行
- 请求或应答头部
- 空行
- 数据
- POST传送格式
- 底层数据通信:
客户端请求:
POST /response.php HTTP/1.1 ---请求行
Accept: application/x-ms-application, image/jpeg, application/xaml+xml, image/gif, image/pjpeg, application/x-ms-xbap, */*
Referer: http://local/
………………
Connection: Keep-Alive
Pragma: no-cache
w=12&h=23&s=276
服务器应答:
HTTP/1.1 200 OK ---请求行
Date: Thu, 29 Jan 2015 15:08:17 GMT ---请求头部
…………
Content-Type: text/html
��������Ϊ��276 ---应答信息
- PHP实现方法:
表单页PHP:
<form action="response.php" method="post">
<input type="text" name="w"><br>
<input type="text" name="h"><br>
………………
<input type="text" name="s">
<input type="submit">
</form>
应答页PHP:
可以使用 $_POST["s"]; 方法可以获得上传的变量值,最好使用脚本进行校验处理
- 总结:
POST方法将数据放在了数据部分
- GET传送格式
- 底层数据通信
客户端请求:
GET /response.php?w=12&h=122&s=1464 HTTP/1.1
Accept: application/x-ms-application, image/jpeg, application/xaml+xml, image/gif, image/pjpeg, application/x-ms-xbap, */*
………………
Connection: Keep-Alive
服务器应答:
HTTP/1.1 200 OK
Date: Thu, 29 Jan 2015 15:39:56 GMT
…………
Content-Type: text/html
����������1464
- PHP实现方法:
表单页PHP:
<form action="response.php" method="get">
<input type="text" name="w"><br>
<input type="text" name="h"><br>
………………
<input type="text" name="s">
<input type="submit">
</form>
应答页PHP:
可以使用 $_GET["s"]; 方法可以获得上传的变量值,最好使用脚本进行校验处理
- 总结:
在数据传输方面GET方法将数据放在了头部
- 错误应答格式
|
取值 |
描述 |
|
1×× |
保留。 |
|
2×× |
成功接收,比如"200"表示处理成功。 |
|
3×× |
客户需进一步细化请求。 |
|
4×× |
客户错误,比如"404"表示访问的指定资源不存在。 |
|
5×× |
服务器错误。 |
用户可以在.htaccess文件中设置错误的应答页
- 总结
本文介绍了HTTP通信的基本格式,详细的协议格式定义可以参考HTTP1.1(RFC2616文档),至于端口监测可以使用fiddler2软件进行底层查看,本软件由破解绿色版,可以轻松搞定。
Fiddler可以监测本地服务器端口,方便调试,可以在hosts文件中修改127.0.0.1为:
Local 127.0.01
浏览器中直接在地址栏输入local即可,如果需要在fiddler只监测local地址,则在过滤器中设置使用过滤器,并且在只显示以下主机的编辑框中输入local即可只显示到local的数据通信信息,另外可以在RAW栏中看到底层的详细通信数据,是纯文本的,方便分析。
^_^Bruce Lone
2015-1-30
HTTP传送协议的更多相关文章
- 计算机网络——超文本传送协议HTTP
一.简述 每个万维网网点都有一个服务器进程,它不断地监听TCP的端口80,以便发现是否有浏览器向它发出连接建立请求.一旦监听到连接建立请求并建立了TCP连接之后,浏览器就向万维网服务器发出浏览某个页面 ...
- 超文本传送协议HTTP
1. HTTP的操作过程: HTTP是面向事务的应用层协议.HTTP协议本身是无连接的,为了保证数据的可靠传输,HTTP使用了面向连接的TCP作为运输层协议.所以,在发送HTTP报文之前都需要先建立T ...
- 超文本传送协议 HTTP
超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议.所有的WWW文件都必须遵守这个标准. HTTP是一个属于应用层的面向对象的协议, ...
- 门面模式的典型应用 Socket 和 Http(post,get)、TCP/IP 协议的关系总结
门面模式的一个典型应用:Socket 套接字(Socket)是通信的基石,是支持TCP/IP协议的网络通信的基本操作单元.它是网络通信过程中端点的抽象表示,包含进行网络通信必须的五种信息: 连接使用的 ...
- OSI七层模型详解 TCP/IP协议
总结 OSI中的层 功能 TCP/IP协议族 应用层 文件传输,电子邮件,文件服务,虚拟终端 TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet 等等 表示层 数据格式化,代码转 ...
- TCP协议学习
一.TCP参考模型 VS OSI参考模型 二.TCP/IP分层模型的四个协议层分别完成以下的功能 第一层 网络接口层 网络接口层包括用于协作IP数据在已有网络介质上传输的协议.实际上TCP/IP标准 ...
- 关于HTTP协议,一篇就够了
HTTP简介 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送 ...
- TCP/IP协议(一)网络基础知识
参考书籍为<图解tcp/ip>-第五版.这篇随笔,主要内容还是TCP/IP所必备的基础知识,包括计算机与网络发展的历史及标准化过程(简述).OSI参考模型.网络概念的本质.网络构建的设备等 ...
- http协议
什么是协议 是指关于计算机通信的一整套规则,是为完成计算机网络通信而制订的规则.约定和标准. http协议是众多通信协议中的一种,超文本传输协议 (HTTP-Hypertext transfer pr ...
随机推荐
- 夺命雷公狗—angularjs—24—extend继承对象
我们的angularjs中也是给我们留下了方法来做继承的,那么他就是传授中的extend... 不过要如下所示,第二个参数是继承到第一个对象里面的... <!DOCTYPE html> & ...
- zw版【转发·台湾nvp系列Delphi例程】HALCON OverpaintRegion1
zw版[转发·台湾nvp系列Delphi例程]HALCON OverpaintRegion1 unit Unit1;interfaceuses Windows, Messages, SysUtils, ...
- win7 64位系统下 PL/SQL无法连接的问题
第一步:下载oracle客户端 由于 PLSQL Developer 没有64位版本,所以在64位系统上运行该程链接64位Oracle时就会报错,笔者为这个问题纠结了好几天,后来通过请教Google ...
- Spring 复习笔记01
Spring 框架 1. core:整个Spring框架构建在Core核心模块上,它是整个框架的的基础. 2. AOP:AOP模块提供了一个轻便但功能强大强大的AOP框架,让我们可以以AOP的形式增强 ...
- PL/SQL快捷键
F8 执行所选中的SQL语句 当光标在sql语句末尾/开头 时 按Shift Home /Shift End 选中该语句
- linux下xargs命令用法详解 【转】
转自:http://blog.chinaunix.net/uid-128922-id-289992.html xargs在linux中是个很有用的命令,它经常和其他命令组合起来使用,非常的灵活. xa ...
- c# 定时执行python脚本
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- Axure简介
Axure RP(Rapid Prototyping快速原型) 是美国公司Axure Software Solution公司旗舰产品,是一个专业的快速原型设计工具,让负责定义需求和规格.设计功能和界面 ...
- JavaEE基础(八)
1.面向对象(代码块的概述和分类)(了解)(面试的时候会问,开发不用或者很少用) A:代码块概述 在Java中,使用{}括起来的代码被称为代码块. B:代码块分类 根据其位置和声明的不同,可以分为局部 ...
- run loop 输入源
做了一年多的IOS开发,对IOS和Objective-C深层次的了解还十分有限,大多还停留在会用API的级别,这是件挺可悲的事情.想学好一门语言还是需要深层次的了解它,这样才能在使用的时候得心应手,出 ...