CN105872090A - 基于扩展状态码的http通信方法 - Google Patents

基于扩展状态码的http通信方法 Download PDF

Info

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
Application number
CN201610367354.9A
Other languages
English (en)
Other versions
CN105872090B (zh
Inventor
魏劲超
江涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sichuan Changhong Electric Co Ltd
Original Assignee
Sichuan Changhong Electric Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sichuan Changhong Electric Co Ltd filed Critical Sichuan Changhong Electric Co Ltd
Priority to CN201610367354.9A priority Critical patent/CN105872090B/zh
Publication of CN105872090A publication Critical patent/CN105872090A/zh
Application granted granted Critical
Publication of CN105872090B publication Critical patent/CN105872090B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer 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通信方法。
背景技术
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状态码为枚举类型或键值对类型。
CN201610367354.9A 2016-05-27 2016-05-27 基于扩展状态码的http通信方法 Active CN105872090B (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 飞狐信息技术(天津)有限公司 一种网页数据格式检测方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Title
王斐: "基于情境感知的多通道交互框架", 《中国优秀硕士学位论文全文数据库(信息科技辑)》 *

Cited By (7)

* Cited by examiner, † Cited by third party
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