文档章节

HTTP 协议详解 - (二)协议详解之请求篇

huxiaosc
 huxiaosc
发布于 2016/06/20 11:39
字数 575
阅读 5
收藏 0

二、HTTP 协议详解之请求篇


http 请求由三部分组成,分别是:请求行、消息报头、请求正文


1、请求行以一个方法符号开头,以空格分开,后面跟着请求的 URI 和协议的版本,格式如下:Method Request-URI HTTP-Version CRLF 其中 Method 表示请求方法;Request-URI 是一个统一资源标识符;HTTP-Version 表示请求的 HTTP 协议版本;CRLF 表示回车和换行(除了作为结尾的 CRLF 外,不允许出现单独的 CR 或 LF 字符)。
请求方法(所有方法全为大写)有多种,各个方法的解释如下:

GET 请求获取 Request-URI 所标识的资源

POST 在 Request-URI 所标识的资源后附加新的数据

HEAD 请求获取由 Request-URI 所标识的资源的响应消息报头

PUT 请求服务器存储一个资源,并用 Request-URI 作为其标识

DELETE 请求服务器删除 Request-URI 所标识的资源

TRACE 请求服务器回送收到的请求信息,主要用于测试或诊断

CONNECT 保留将来使用

OPTIONS 请求查询服务器的性能,或者查询与资源相关的选项和需求 应用举例:

GET 方法:在浏览器的地址栏中输入网址的方式访问网页时,浏览器采用 GET 方法向服务器获取资源, eg:GET /form.html HTTP/1.1 (CRLF)
POST 方法要求被请求服务器接受附在请求后面的数据,常用于提交表单。

eg:POST /reg.jsp HTTP/ (CRLF)

Accept:image/gif,image/x-xbit,... (CRLF) ...

HOST:www.guet.edu.cn (CRLF)

Content-Length:22 (CRLF)

Connection:Keep-Alive (CRLF)

Cache-Control:no-cache (CRLF)

(CRLF) //该 CRLF 表示消息报头已经结束,在此之前为消息报头

user=jeffrey&pwd=1234 //此行以下为提交的数据


HEAD 方法与 GET 方法几乎是一样的,对于 HEAD 请求的回应部分来说,它的 HTTP 头部中包含的信 息与通过 GET 请求所得到的信息是相同的。利用这个方法,不必传输整个资源内容,就可以得 到 Request-URI 所标识的资源的信息。该方法常用于测试超链接的有效性,是否可以访问,以及最近是否 更新。 2、请求报头后述 3、请求正文(略)

本文转载自:

共有 人打赏支持
huxiaosc
粉丝 0
博文 3
码字总数 165
作品 0
成都
架构师
Netty干货分享:京东京麦的生产级TCP网关技术实践总结

1、引言 京东的京麦商家后台2014年构建网关,从HTTP网关发展到TCP网关。在2016年重构完成基于Netty4.x+Protobuf3.x实现对接PC和App上下行通信的高可用、高性能、高稳定的TCP长连接网关。 早期...

JackJiang2011
2017/12/01
0
0
WebSocket详解(六):刨根问底WebSocket与Socket的关系

1、前言 对于很多初次接触Web端即时通讯技术的人来说,WebSocket是个很新的概念,但无疑它是当前Web端即时通讯技术中最热门的关键词。随便点开一篇文章,只要说打算开发Web端即时通讯相关的的...

JackJiang2011
2017/12/15
0
0
网络编程懒人入门(五):快速理解为什么说UDP有时比TCP更有优势

本文观点仅作参考,请根据自已系统的应用场景合理地选择数据传输层协议即可,无需盲目崇拜大牛言论。 1、前言 对于即时通讯开者新手来说,在开始着手编写IM或消息推送系统的代码前,最头疼的...

JackJiang2011
2017/12/19
0
0
JavaEE 要懂的小事:一、图解Http协议

Writer :BYSocket(泥沙砖瓦浆木匠) 微 博:BYSocket 豆 瓣:BYSocket FaceBook:BYSocket Twitter :BYSocket 泥瓦匠记得和左潇龙【博客园】上次聊天时,龙哥问了个Session的问题。我当时...

泥沙砖瓦浆木匠
2015/05/19
0
14
脑残式网络编程入门(五):每天都在用的Ping命令,它到底是什么?

本文引用了公众号纯洁的微笑作者奎哥的技术文章,感谢原作者的分享。 1、前言 老于网络编程熟手来说,在测试和部署网络通信应用(比如IM聊天、实时音视频等)时,如果发现网络连接超时,第一...

首席大胸器
09/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

如何在Windows平台用Java代码暴力破解WIFI密码

由于新搬的地方没有覆盖移动的宽带,最近手头又紧。所以暂时先没安宽带,但是一天用流量,也撑不住啊。看着流量哗啦啦的溜走。住的地方在6楼,然后房子是底商的格局,于是就动起了蹭网的小心...

耒耒耒耒耒
4分钟前
0
0
兄弟连区块链教程以太坊源码分析core-vm-stack-memory源码分析

vm使用了stack.go里面的对象Stack来作为虚拟机的堆栈。memory代表了虚拟机里面使用的内存对象。 stack 比较简单,就是用1024个big.Int的定长数组来作为堆栈的存储。 构造 // stack is an...

兄弟连区块链入门教程
5分钟前
0
0
zabbix报错cannot set resource limit: [13] Permission denied解决方法

zabbix报错cannot set resource limit: [13] Permission denied解决方法 zabbix-server启动时出现以下错误: 1 2 3 4 2912:20180326:050930.023 using configuration file: /etc/zabbix/zab......

linjin200
9分钟前
0
0
kotlin使用spring mvc(四)

使用Interceptor拦截器 Filter 是在 Servlet 规范中定义的,是 Servlet 容器支持的。而拦截器是在 Spring容器内的,是Spring框架支持的。Filter在只在 Servlet 前后起作用。Filters 通常将 ...

weidedong
16分钟前
0
0
DAC测试链(TestNet)记录

20181022 DAC测试链(TestNet)记录 1、DAC 文档 https://github.com/linkdt-tech/DAC/blob/master/doc/createAsset.md 2、按照文档安装后,进入 dacd 目录 cd /opt/cd dacd_testnet/** 直......

wwzzhh166
19分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部