对HTTP基本认识(HTTP协议入门必备)
目录
基本概念
使用phpStudy演示GET方法
分析下GET方法
使用phpStudy演示POST方法
分析POST方法
基本概念
HTTP请求信息和响应信息的格式!
请求:
1. 请求行
2. 请求头信息
3. 请求主题信息(可以没有)
4. 头信息结束后和主体信息之间要空一行
请求行又分3部分!
请求方法 请求路径 所用协议
请求方法:GET POST PUT DELETE TRACE OPTIONS
所用协议:目前一般是HTTP/1.1
使用phpStudy演示GET方法
启动phpStudy后:
进入根web根目录,创建一个php文件,代码如下:
<?php
echo 'hello'
?>
web网站运行截图如下:
使用telnet发送GET方法,获取web数据。
进入后,按ctrl + ] 后开启回显,再按下回车即可
输入如下命令:
GET /Hello.php HTTP/1.1
Host: localhost
现象如下,可以得到回过来的数据
过了几秒钟,就会自动断开。
分析下GET方法
GET /Hello.php HTTP/1.1 为请求头
Host: localhost 请求头部信息
这里使用Host的原因是:一台服务器上可能有很多虚拟路径,所以Host是指明是哪个虚拟路径。
【解析】
1.GET就是请求方法method;
2./Hello.php为请求的资源;
3.HTTP/1.1为请求所用的版本。
4.头信息结束后,有一个空行。头信息和主体信息(如果有),需要这个空行区分。
5.即使没有主体信息,空行也不能少。
使用phpStudy演示POST方法
做一个PHP页面,这个页面接收POST消息后,写成一个post.txt的文本。
源码如下:
<?php$str = implode($_POST, "\n");
file_put_contents('./post.txt', $str);
echo 'write ok';?>
同样使用上面的telent即可!
输入如下命令
POST /Post.php HTTP/1.1
Host: localhost
Content-type: application/x-www-form-urlencoded
Content-length: 25username=nimama&age=10000
如下
现象如下:
分析POST方法
POST /Post.php HTTP/1.1
Host: localhost
Content-type: application/x-www-form-urlencoded
Content-length: 25
username=nimama&age=1000
【注意】
头信息里,要标明主体的长度POST比GET多了主体信息。
Content-type: application/x-www-form-urlencoded是要是服务器这是POST方法。
对HTTP基本认识(HTTP协议入门必备)相关推荐
- HTTP协议方法及状态码(HTTP协议入门必备)
目录 基本概念 使用telnet演示HEAD方法 使用telnet演示TRACE方法 使用telnet演示OPTIONS方法 HTTP响应中的状态码 304响应演示 使用telnet演示304响应 基 ...
- Linux操作系统学习笔记【入门必备】
Linux操作系统学习笔记[入门必备] 文章目录 Linux操作系统学习笔记[入门必备] 1.Linux入门 2.Linux目录结构 3.远程登录 3.1 远程登录Linux-Xshell5 3.2 ...
- internet 协议入门
前言 劳于读书,逸于作文. 原文地址:internet协议入门 博主博客地址:Damonare的个人博客 博主之前写过一篇博客:网络协议分析,在这篇博客里通过抓包,具体的分析了不同网络协议的传送的数据 ...
- 互联网协议入门(二)【转】
原文地址:点击前往 上一篇文章分析了互联网的总体构思,从下至上,每一层协议的设计思想. 这是从设计者的角度看问题,今天我想切换到用户的角度,看看用户是如何从上至下,与这些协议互动的. ======== ...
- python基础一入门必备知识-Python数据分析入门必备基础知识
今天,老师要带大家解数据分析的定义.核心思路.应用领域以及开发流程,向大家全方位展示数据分析入门必备基础知识,全都是干货哦!虽然看完本文,不能让大家立马变身为一名数据分析师,但是能让大家对数据分析有一 ...
- 互联网协议入门(一)
我们每天使用互联网,你是否想过,它是如何实现的? 全世界几十亿台电脑,连接在一起,两两通信.上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很 ...
- 互联网协议入门(二)
上一篇文章分析了互联网的总体构思,从下至上,每一层协议的设计思想. 这是从设计者的角度看问题,今天我想切换到用户的角度,看看用户是如何从上至下,与这些协议互动的. ================== ...
- 【Linux网络编程】网络协议入门
00. 目录 文章目录 00. 目录 01. 前言 02. 概述 03. 物理层 04. 数据链路层 05. 网络层 06. 传输层 07. 应用层 08. 附录 01. 前言 我们每天使用互联网,你 ...
- 排序算法之---堆排序(很重要的一个结构,新手入门必备)
排序算法之---堆排序(很重要的一个结构,新手入门必备) 先来简单的介绍一下堆结构: 堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序,它的最坏,最好,平均时间复杂度均为O(nlo ...
最新文章
- uvm 形式验证_一种基于UVM的总线验证方法与流程
- 【深入理解JVM】JVM内存模型
- SpringBoot2.1.9 Mybatis由于@Mapper注解多数据源配置不生效问题
- java word2007_Java解析word2007、Excel2003和Excel2007
- Normalize.css和Reset CSS有什么区别?
- Tensorflow源码编译
- python动态爱心曲线_使用matplotlib动态刷新指定曲线实例
- ajax提交sql注入,Godontologico '/index_ajax.php' SQL注入漏洞
- Java代理模式实现与原理详解(一)
- 进化计算(九)——MOEA/D代码实现及中文详解(Matlab)
- 产品经理如何写好产品需求文档
- Java学习之代码扫描工具的使用方法
- Linux入门推荐书籍
- stardust开篇
- 学习python必备软件
- 软件测试笔记(四):白盒测试
- 何学林:房价为什么降不下来?房价上涨的刚性是由强大的利益共同体共同作用的结果(原创首发,深度好文)——何学林房地产大策划之十四
- 联想计算机组装,联想主板跳线图解(新手电脑组装教程)
- matlab自耦变压器,基于MATLAB的500kV自耦变压器建模及仿真.pdf
- 3配置的笔记本能不能运行博图v15_618电脑配置推荐大全,学UG要换电脑就来参考下!...