CN105872090A - 基于扩展状态码的http通信方法 - Google Patents
基于扩展状态码的http通信方法 Download PDFInfo
- Publication number
- CN105872090A CN105872090A CN201610367354.9A CN201610367354A CN105872090A CN 105872090 A CN105872090 A CN 105872090A CN 201610367354 A CN201610367354 A CN 201610367354A CN 105872090 A CN105872090 A CN 105872090A
- Authority
- CN
- China
- Prior art keywords
- http
- extension
- conditional code
- server
- communication method
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
Abstract
本发明涉及网络通信领域,提供一种基于扩展状态码的HTTP通信方法,以解决目前基于状态码的HTTP通信方法在特定情况下存在不必要的数据开销的,该方法包括:客户端向服务器发送HTTP请求消息;服务器返回响应信息;客户端获取服务器的扩展HTTP状态码的定义;客户端接收服务器发送的响应信息。本发明提出的技术方案采用扩展HTTP状态码实现错误提示,避免了不必要的数据开销,提升了传输效率。
Description
技术领域
本发明属于网络通信领域,特别涉及一种基于扩展状态码的HTTP通信方法。
背景技术
HTTP(Hyper Text Transfer Protocol)是超文本传输协议的缩写,它用于传送WWW方式的数据。HTTP协议采用了请求/响应模型,客户端向服务器发送一个请求,请求头包含请求的方法、URI、协议版本、以及包含请求修饰符、客户信息和内容的类似于MIME的消息结构。服务器以一个状态行作为响应,相应的内容包括消息协议的版本,成功或者错误编码加上包含服务器信息、实体元信息以及可能的实体内容。
移动终端的通信数据中,往往使用一个数据结构封装返回响应数据和状态码,在实际使用中数据应该分成两个部分:有效的状态码和有效的数据。在错误的返回中,有效的数据中不包含数据,但是这个返回的结构依旧要求构造了一个空的数据返回,这样就造成了数据冗余(即不需要的数据结构被作为有效数据传送了),因此,上述通信方式在特定情况下造成了不必要的数据开销。
发明内容
【要解决的技术问题】
本发明的目的是提供一种基于扩展状态码的HTTP通信方法,以解决目前基于状态码的HTTP通信方法在特定情况下存在不必要的数据开销的问题。
【技术方案】
本发明是通过以下技术方案实现的。
本发明涉及一种基于扩展状态码的HTTP通信方法,包括步骤:
A、客户端向服务器发送HTTP请求消息;
B、服务器接收到客户端发送的HTTP请求消息后,根据HTTP请求进行业务处理后得到业务数据,并向客户端返回响应信息,如果业务处理成功,则所述响应信息包括含有基础HTTP状态码的状态行、消息报头和业务数据,如果业务处理失败,则所述响应信息包括含有扩展HTTP状态码的状态行和消息报头;
C、客户端接收服务器发送的响应信息,如果响应信息的状态行包括扩展HTTP状态码,则查找得到该扩展HTTP状态码对应的错误类型。
作为一种优选的实施方式,所述步骤C之前还包括:客户端通过服务器的公开接口获取扩展HTTP状态码的定义及各种扩展HTTP状态码对应的错误类型。
作为另一种优选的实施方式,所述客户端通过Hash验证的方式获取扩展HTTP状态码的定义及各种扩展HTTP状态码对应的错误类型。
作为另一种优选的实施方式,所述扩展HTTP状态码为枚举类型或键值对类型。
【有益效果】
本发明提出的技术方案具有以下有益效果:
本发明采用扩展HTTP状态码实现错误提示,避免了不必要的数据开销,提升了传输效率。
附图说明
图1为本发明的实施例一提供的基于扩展状态码的HTTP通信方法的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的具体实施方式进行清楚、完整的描述。
图1为本发明实施例一提供的基于扩展状态码的HTTP通信方法的流程图。如图1所示,该方法包括步骤S1至步骤S4,下面分别对各个步骤进行详细说明。
步骤S1:客户端向服务器发送HTTP请求消息。
步骤S1中,客户端与服务器建立通信连接,客户端向服务器发送HTTP请求消息。
步骤S2:服务器返回响应信息。
步骤S2中,服务器接收到客户端发送的HTTP请求消息后,根据HTTP请求进行业务处理后得到业务数据,并向客户端返回响应信息,如果业务处理成功,则响应信息包括含有基础HTTP状态码的状态行、消息报头和业务数据。如果业务处理失败,则响应信息包括含有扩展HTTP状态码的状态行和消息报头。需要说明,基础HTTP状态码的类型包括:成功(2字头);重定向(3字头);请求错误(4字头);服务器错误(5字头和6字头),本实施例中的扩展HTTP状态码的类型为9字头,不同的扩展HTTP状态码代表各种不同类型的错误。下面给出采用扩展HTTP状态码的响应信息结构:
HTTP/1.1 913
Cache-Control:no-cache
Pragma:no-cache
Expires:-1
Server:Micosoft-IIS/10.0
X-AspNet-Version:4.0.30319
X-SourceFiles:=7UTF-8?B?RDpcTX13B3Jrc3Bhy
X-Powered-By:ASP.NET
Date:Mon,18Jan 2016
Content-Length:0
上述响应信息结构中913表示Car_NOT_BIND类型业务处理失败。
作为对比,现有技术中Car_NOT_BIND类型业务处理失败时的响应信息结构为:
HTTP/1.1 200OK
Cache-Control:no-cache
Pragma:no-cache
Expires:-1
Server:Micosoft-IIS/10.0
X-AspNet-Version:4.0.30319
X-SourceFiles:=7UTF-8?B?RDpcTX13B3Jrc3Bhy
X-Powered-By:ASP.NET
Date:Mon,18Jan 2016
Content-Length:295
{“State”:-26,”Desc”,”Car_NOT_BIND”,”pinState”:null}
上述返回结构中,200为基础HTTP状态码,表示请求成功,服务器在处理时存在Car_NOT_BIND类型失败,因此通过结构体{“State”:-26,”Desc”,”Car_NOT_BIND”,”pinState”:null}返回该类型失败,同时还需要构造一个空(null)的数据返回,与本发明实施例中的返回结构对比可知,现有技术中的返回的结构构造了一个空(null)的数据返回,本发明实施例通过构造扩展HTTP状态码实现错误提示,避免了不必要的数据开销,提升了传输效率。
步骤S3:客户端获取服务器的扩展HTTP状态码的定义。
步骤S3中,客户端通过服务器的公开接口获取扩展HTTP状态码的定义及各种扩展HTTP状态码对应的错误类型,具体地,客户端通过Hash验证的方式获取扩展HTTP状态码的定义及各种扩展HTTP状态码对应的错误类型。需要说明,步骤S3用于获取扩展HTTP状态码的定义及各种扩展HTTP状态码对应的错误类型,以在步骤S4中得到对应的错误类型,因此该步骤只需要在步骤S4之前执行即可。
步骤S4:客户端接收服务器发送的响应信息。
步骤S4中,客户端接收服务器发送的响应信息,如果响应信息的状态行包括扩展HTTP状态码,则查找得到该扩展HTTP状态码对应的错误类型。
从以上实施例可以看出,本发明实施例采用扩展HTTP状态码实现错误提示,避免了不必要的数据开销,提升了传输效率。
需要说明,上述描述的实施例是本发明的一部分实施例,而不是全部实施例,也不是对本发明的限制。基于本发明的实施例,本领域普通技术人员在不付出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
Claims (4)
1.一种基于扩展状态码的HTTP通信方法,其特征在于包括步骤:
A、客户端向服务器发送HTTP请求消息;
B、服务器接收到客户端发送的HTTP请求消息后,根据HTTP请求进行业务处理后得到业务数据,并向客户端返回响应信息,如果业务处理成功,则所述响应信息包括含有基础HTTP状态码的状态行、消息报头和业务数据,如果业务处理失败,则所述响应信息包括含有扩展HTTP状态码的状态行和消息报头;
C、客户端接收服务器发送的响应信息,如果响应信息的状态行包括扩展HTTP状态码,则查找得到该扩展HTTP状态码对应的错误类型。
2.根据权利要求1所述的基于扩展状态码的HTTP通信方法,其特征在于所述步骤C之前还包括:客户端通过服务器的公开接口获取扩展HTTP状态码的定义及各种扩展HTTP状态码对应的错误类型。
3.根据权利要求2所述的基于扩展状态码的HTTP通信方法,其特征在于所述客户端通过Hash验证的方式获取扩展HTTP状态码的定义及各种扩展HTTP状态码对应的错误类型。
4.根据权利要求1所述的基于扩展状态码的HTTP通信方法,其特征在于所述扩展HTTP状态码为枚举类型或键值对类型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610367354.9A CN105872090B (zh) | 2016-05-27 | 2016-05-27 | 基于扩展状态码的http通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610367354.9A CN105872090B (zh) | 2016-05-27 | 2016-05-27 | 基于扩展状态码的http通信方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105872090A true CN105872090A (zh) | 2016-08-17 |
CN105872090B CN105872090B (zh) | 2019-05-07 |
Family
ID=56642600
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610367354.9A Active CN105872090B (zh) | 2016-05-27 | 2016-05-27 | 基于扩展状态码的http通信方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105872090B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108134708A (zh) * | 2016-12-01 | 2018-06-08 | 腾讯科技(深圳)有限公司 | 监控第三方接口的方法和装置 |
CN109344046A (zh) * | 2018-08-09 | 2019-02-15 | 北京奇艺世纪科技有限公司 | 一种数据处理方法、装置、介质及电子设备 |
CN110166530A (zh) * | 2019-04-17 | 2019-08-23 | 平安普惠企业管理有限公司 | 基于微服务返回值的处理方法、电子装置及计算机设备 |
CN111984532A (zh) * | 2020-07-31 | 2020-11-24 | 五八有限公司 | 一种基于小程序的异常处理方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070050375A1 (en) * | 2005-08-31 | 2007-03-01 | Microsoft Corporation | Extended HTTP error channel |
CN102006675A (zh) * | 2009-08-31 | 2011-04-06 | 华为技术有限公司 | 一种数据传输方法、传输设备及移动终端 |
CN102457565A (zh) * | 2010-11-03 | 2012-05-16 | 中国电信股份有限公司 | 移动终端访问网络的方法及代理服务器 |
CN102929984A (zh) * | 2012-10-18 | 2013-02-13 | 北京奇虎科技有限公司 | 失效网址搜索方法和装置 |
CN103729477A (zh) * | 2014-01-26 | 2014-04-16 | 飞狐信息技术(天津)有限公司 | 一种网页数据格式检测方法及装置 |
-
2016
- 2016-05-27 CN CN201610367354.9A patent/CN105872090B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070050375A1 (en) * | 2005-08-31 | 2007-03-01 | Microsoft Corporation | Extended HTTP error channel |
CN102006675A (zh) * | 2009-08-31 | 2011-04-06 | 华为技术有限公司 | 一种数据传输方法、传输设备及移动终端 |
CN102457565A (zh) * | 2010-11-03 | 2012-05-16 | 中国电信股份有限公司 | 移动终端访问网络的方法及代理服务器 |
CN102929984A (zh) * | 2012-10-18 | 2013-02-13 | 北京奇虎科技有限公司 | 失效网址搜索方法和装置 |
CN103729477A (zh) * | 2014-01-26 | 2014-04-16 | 飞狐信息技术(天津)有限公司 | 一种网页数据格式检测方法及装置 |
Non-Patent Citations (1)
Title |
---|
王斐: "基于情境感知的多通道交互框架", 《中国优秀硕士学位论文全文数据库(信息科技辑)》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108134708A (zh) * | 2016-12-01 | 2018-06-08 | 腾讯科技(深圳)有限公司 | 监控第三方接口的方法和装置 |
CN108134708B (zh) * | 2016-12-01 | 2021-05-25 | 腾讯科技(深圳)有限公司 | 监控第三方接口的方法和装置 |
CN109344046A (zh) * | 2018-08-09 | 2019-02-15 | 北京奇艺世纪科技有限公司 | 一种数据处理方法、装置、介质及电子设备 |
CN109344046B (zh) * | 2018-08-09 | 2022-01-07 | 北京奇艺世纪科技有限公司 | 一种数据处理方法、装置、介质及电子设备 |
CN110166530A (zh) * | 2019-04-17 | 2019-08-23 | 平安普惠企业管理有限公司 | 基于微服务返回值的处理方法、电子装置及计算机设备 |
CN110166530B (zh) * | 2019-04-17 | 2023-02-03 | 平安普惠企业管理有限公司 | 基于微服务返回值的处理方法、电子装置及计算机设备 |
CN111984532A (zh) * | 2020-07-31 | 2020-11-24 | 五八有限公司 | 一种基于小程序的异常处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105872090B (zh) | 2019-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105872090A (zh) | 基于扩展状态码的http通信方法 | |
US8375094B2 (en) | Creating a message readable by a plurality of heterogeneous recipients | |
CN102546612B (zh) | 用户态下基于rdma协议的远程过程调用实现方法 | |
CN105915658B (zh) | 获取客户端ip地址的数据调用方法、数据传输方法 | |
US20070070988A1 (en) | Method For Transmitting Deferred Messages | |
CN109451032B (zh) | 一种消息传递系统 | |
CN104580097A (zh) | 一种数据处理方法、装置及系统 | |
CN103117915A (zh) | 一种消息发送的方法和设备 | |
US20110281594A1 (en) | Consolidating international short message service messages destined to multiple recipients | |
CN103179133A (zh) | 基于实体类的客户端与服务器通信的方法 | |
US20080089357A1 (en) | Message compression | |
JP2004530231A (ja) | ユーザアプリケーションとサーバ間における改良型相互動作方法 | |
CN104272774A (zh) | 用于处理编码数据流的系统和方法 | |
TWI673983B (zh) | 一種資料壓縮傳輸方法和系統、及其終端和伺服器 | |
CN102065143A (zh) | 基于http的通信方法及系统、http服务器、http客户端 | |
CN104767710B (zh) | 基于dfa的http分块传输编码的传输载荷提取方法 | |
CN102572735B (zh) | 开放移动通讯联盟的方法与装置 | |
CN105635182B (zh) | 一种数据压缩传输方法及系统 | |
CN102761780A (zh) | 智能遥控器获取媒体元数据的方法 | |
CN104081747B (zh) | 传输http报文的方法、编码装置和解码装置 | |
CN107145535A (zh) | 即时通信方法及装置和服务器 | |
CN110071925B (zh) | 数据传输方法和相应的服务器、计算机可读存储介质 | |
TWI645698B (zh) | 資料發送裝置、資料接收裝置及其方法 | |
CN101394540B (zh) | 用于交互式网络电视系统的流分发方法 | |
US8255505B2 (en) | System for intelligent context-based adjustments of coordination and communication between multiple mobile hosts engaging in services |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |