文档章节

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

huxiaosc
 huxiaosc
发布于 2016/06/20 11:39
字数 575
阅读 5
收藏 0
点赞 0
评论 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

WebSocket详解(六):刨根问底WebSocket与Socket的关系

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

JackJiang2011 ⋅ 2017/12/15 ⋅ 0

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

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

JackJiang2011 ⋅ 2017/12/19 ⋅ 0

JavaEE 要懂的小事:一、图解Http协议

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

泥沙砖瓦浆木匠 ⋅ 2015/05/19 ⋅ 14

网络编程懒人入门(三):快速理解TCP协议一篇就够

原作者:阮一峰(ruanyifeng.com),本文由即时通讯网重新整理发布,感谢原作者的无私分享。 1、前言 本系列文章的前两篇《网络编程懒人入门(一):快速理解网络通信协议(上篇)》、《网络编程...

JackJiang2011 ⋅ 2017/10/12 ⋅ 0

IM消息送达保证机制实现(二):保证离线消息的可靠投递

1、前言 本文的上篇《IM消息送达保证机制实现(一):保证在线实时消息的可靠投递》中,我们讨论了在线实时消息的投递可以通过应用层的确认、发送方的超时重传、接收方的去重等手段来保证业务层...

JackJiang- ⋅ 2016/11/18 ⋅ 0

http基础性问题,http详解

简捷、快速 HTTP 是一个属于应用层的面向对象的协议,由于其的方式,适用 于分布式超媒体信息系统。它于 1990 年提出,经过几年的使用与发展,得到 不断地完善和扩展。目前在 WWW 中使用的是...

D1丶NA ⋅ 2017/07/07 ⋅ 0

WebSocket安卓客户端实现详解(二)--客户端发送请求

WebSocket安卓客户端实现详解(二)–客户端发送请求 本篇接着上一篇讲解WebSocket客户端发送请求和服务端主动通知消息,还没看过第一篇的小伙伴,这里附上第一篇链接WebSocket安卓客户端实现详解...

zly921112 ⋅ 2017/08/06 ⋅ 0

移动端IM开发需要面对的技术问题

1、前言 这两年多一直从事网易云信 iOS 端 IM SDK的开发,期间不断有兄弟部门的同事和合作伙伴过来问各种技术细节,干脆统一介绍下一个IM APP的方方面面,包括技术选型(包括通讯方式,网络连...

JackJiang- ⋅ 2016/08/09 ⋅ 0

理论联系实际:从零理解WebSocket的通信原理、协议格式、安全性

本文来自云栖社区程序猿小卡的技术分享。 1、前言 WebSocket的出现,使得浏览器具备了实时双向通信的能力。本文由浅入深,介绍了WebSocket如何建立连接、交换数据的细节,以及数据帧的格式。...

JackJiang2011 ⋅ 01/15 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

常见数据结构(二)-树(二叉树,红黑树,B树)

本文介绍数据结构中几种常见的树:二分查找树,2-3树,红黑树,B树 写在前面 本文所有图片均截图自coursera上普林斯顿的课程《Algorithms, Part I》中的Slides 相关命题的证明可参考《算法(第...

浮躁的码农 ⋅ 昨天 ⋅ 0

android -------- 混淆打包报错 (warning - InnerClass ...)

最近做Android混淆打包遇到一些问题,Android Sdutio 3.1 版本打包的 错误如下: Android studio warning - InnerClass annotations are missing corresponding EnclosingMember annotation......

切切歆语 ⋅ 昨天 ⋅ 0

eclipse酷炫大法之设置主题、皮肤

eclipse酷炫大法 目前两款不错的eclipse 1.系统设置 Window->Preferences->General->Appearance 2.Eclipse Marketplace下载【推荐】 Help->Eclipse Marketplace->搜索‘theme’进行安装 比如......

anlve ⋅ 昨天 ⋅ 0

vim编辑模式、vim命令模式、vim实践

vim编辑模式 编辑模式用来输入或修改文本内容,编辑模式除了Esc外其他键几乎都是输入 如何进入编辑模式 一般模式输入以下按键,均可进入编辑模式,左下角提示 insert(中文为插入) 字样 i ...

蛋黄Yolks ⋅ 昨天 ⋅ 0

大数据入门基础:SSH介绍

什么是ssh 简单说,SSH是一种网络协议,用于计算机之间的加密登录。 如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码...

董黎明 ⋅ 昨天 ⋅ 0

web3j教程

web3j是一个轻量级、高度模块化、响应式、类型安全的Java和Android类库提供丰富API,用于处理以太坊智能合约及与以太坊网络上的客户端(节点)进行集成。 汇智网最新发布的web3j教程,详细讲解...

汇智网教程 ⋅ 昨天 ⋅ 0

谷歌:安全问题机制并不如你想象中安全

腾讯科技讯 5月25日,如今的你或许已经对许多网站所使用的“安全问题机制”习以为常了,但你真的认为包括“你第一个宠物的名字是什么?”这些问题能够保障你的帐户安全吗? 根据谷歌(微博)安...

问题终结者 ⋅ 昨天 ⋅ 0

聊聊spring cloud gateway的RedisRateLimiter

序 本文主要研究下spring cloud gateway的RedisRateLimiter GatewayRedisAutoConfiguration spring-cloud-gateway-core-2.0.0.RELEASE-sources.jar!/org/springframework/cloud/gateway/con......

go4it ⋅ 昨天 ⋅ 0

169. Majority Element - LeetCode

Question 169. Majority Element Solution 思路:构造一个map存储每个数字出现的次数,然后遍历map返回出现次数大于数组一半的数字. 还有一种思路是:对这个数组排序,次数超过n/2的元素必然在中...

yysue ⋅ 昨天 ⋅ 0

NFS

14.1 NFS介绍 NFS是Network File System的缩写 NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导开发,最新为4.1版本 NFS数据传输基于RPC协议,RPC...

派派菠菜 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部