CN110995798B - 一种用于功能手机网络应用的数据通信方法和系统 - Google Patents
一种用于功能手机网络应用的数据通信方法和系统 Download PDFInfo
- Publication number
- CN110995798B CN110995798B CN201911150315.3A CN201911150315A CN110995798B CN 110995798 B CN110995798 B CN 110995798B CN 201911150315 A CN201911150315 A CN 201911150315A CN 110995798 B CN110995798 B CN 110995798B
- Authority
- CN
- China
- Prior art keywords
- http
- socket
- https request
- request
- data
- 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.)
- Active
Links
Images
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
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- 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/14—Session management
- H04L67/141—Setup of application sessions
-
- 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/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请通过一种用于功能手机网络应用的数据通信方法,首先基于功能手机的网络应用获取请求,接着基于请求专用内存空间使用情况解析所述请求,将已解析的所述请求加入请求发送队列,然后基于socket专用内存空间使用情况接收已解析的所述请求,将已解析的所述请求封装成包含所述请求的socket数据,加入socket数据发送队列,再接着与目标服务器建立socket连接,发送包含所述请求的socket数据,最后删除socket数据发送队列中的socket数据,删除请求发送队列中的所述请求。通过该方法可以减少重复代码,提高内存使用效率,减少系统碎片,占用较少内存即可有序、高效地实现功能手机网络应用的数据通信,同时无需对网络应用做相应的代码维护,降低了开发人员工作量。
Description
技术领域
本申请涉及移动通信技术领域,尤其涉及一种用于功能手机网络应用的数据通信的技术。
背景技术
目前功能手机的市场虽然已很小,但还是有一些特定用户群体。而当前功能手机的网络应用开发没有一套标准化工具,开发人员在开发网络应用是只能直接调用底层网络接口,在运行网络应用软件时,由网络应用软件自己管理相关的内存、后台调用相关网络接口,实现网络应用。
这种非标准化的网络应用开发模式一方面会带来代码重复、内存管理混乱、容易造成底层接口堵塞,容易造成数据通信失败,甚至系统不稳定、死机;另一方面不同的开发人员开发经验、风格不同,易导致不同功能手机平台无法兼容、可移植性差,需要单独维护。
发明内容
本申请的目的是提供一种用于功能手机网络应用的数据通信方法与系统。
根据本申请的一个方面,提供了一种用于功能手机网络应用的数据通信方法,其中,所述方法包括:
基于网络应用获取HTTP/HTTPS请求;
基于HTTP/HTTPS请求专用内存空间使用情况解析所述HTTP/HTTPS请求,将已解析HTTP/HTTPS请求加入HTTP/HTTPS请求发送队列,其中,若所述HTTP/HTTPS请求专用内存空间不足,则提示HTTP/HTTPS请求失败;
基于socket专用内存空间使用情况接收所述已解析HTTP/HTTPS请求,将所述已解析HTTP/HTTPS请求封装成包含所述HTTP/HTTPS请求的socket数据,加入socket数据发送队列,其中,若所述socket专用内存空间不足,则通知HTTP/HTTPS请求队列重新发送所述HTTP/HTTPS请求;
与目标服务器建立socket连接,发送包含所述HTTP/HTTPS请求的socket数据,其中,若所述socket数据发送不成功,则基于预置的重发策略重新发送socket数据,直到所述socket数据发送成功,或者所述socket数据重新发送的次数超过重发策略预置的重发次数,提示HTTP/HTTPS请求超时;
删除所述socket数据发送队列中的所述socket数据,删除所述HTTP/HTTPS请求发送队列中的所述HTTP/HTTPS请求。
优选地,所述HTTP/HTTPS请求发送队列支持的最大HTTP/HTTPS请求数大于socket队列支持的最大socket排队数。
优选地,所述HTTP/HTTPS请求发送队列中的HTTP/HTTPS请求,还对应设置状态标识,其中,所述状态标识用于表示请求中或者等待请求中。
优选地,所述HTTP/HTTPS请求专用内存是预置的专用内存,其中,所述专用内存是静态分配的内存或动态分配的内存中任一项。
优选地,所述socket专用内存是预置的专用内存,其中,所述专用内存是动态分配的内存。
优选地,所述与目标服务器建立socket连接,包括同时建立多个socket连接,其中,同时建立的最大socket连接数是socket队列的最大排队数。
优选地,所述一种用于功能手机网络应用的数据通信方法还包括:
接收包含所述HTTP/HTTPS请求响应数据的socket数据,关闭socket连接;
解封装所述HTTP/HTTPS请求响应数据的socket数据,获取所述HTTP/HTTPS请求响应数据;
向网络应用返回所述HTTP/HTTPS请求响应数据。
根据本申请的另一方面,还提供了一种用于功能手机网络应用的数据通信系统,其中,所述系统包括:
HTTP/HTTPS接口模块,用于基于网络应用获取HTTP/HTTPS请求,向网络应用返回所述HTTP/HTTPS请求响应数据;
HTTP/HTTPS控制模块,用于管理HTTP/HTTPS请求专用内存,解析HTTP/HTTPS请求,管理HTTP/HTTPS请求发送队列;
socket控制模块,用于管理socket专用内存和socket数据发送队列;
socket操作模块,用于与目标服务器建立socket连接,发送包含所述HTTP/HTTPS请求的socket数据,接收包含所述HTTP/HTTPS请求响应数据的socket数据,在完成包含所述HTTP/HTTPS请求响应数据的socket数据接收后,关闭socket连接。
与现有技术相比,本申请通过一种用于功能手机网络应用的数据通信方法,首先基于功能手机的网络应用获取HTTP/HTTPS请求,接着基于HTTP/HTTPS请求专用内存空间使用情况解析HTTP/HTTPS请求,将已解析HTTP/HTTPS请求加入HTTP/HTTPS请求发送队列,然后基于socket专用内存空间使用情况接收已解析HTTP/HTTPS请求,将已解析HTTP/HTTPS请求封装成包含HTTP/HTTPS请求的socket数据,加入socket数据发送队列,再接着与目标服务器建立socket连接,发送包含HTTP/HTTPS请求的socket数据,最后删除socket数据发送队列中的socket数据,删除HTTP/HTTPS请求发送队列中的HTTP/HTTPS请求,释放占用的socket专用内存空间和HTTP/HTTPS请求专用内存空间。通过该方法使用一种新的形式对应用层网络应用的数据进行重组、封装,可以减少重复代码,提高内存使用效率,减少系统碎片,占用较少内存即可有序、高效地实现功能手机网络应用的数据通信,提高了功能手机的网络应用性能和稳定性,同时无需对网络应用做相应的代码维护,降低了开发人员工作量。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1示出根据本申请一个方面的一个实施例的一种用于功能手机网络应用的数据通信的方法流程图;
图2示出基于C语言的HTTP/HTTPS接口说明;
图3示出基于C语言的HTTP/HTTPS请求的结构体说明;
图4示出基于C语言的回调函数说明;
图5示出根据本申请一个方面的另一个实施例的一种用于功能手机网络应用的数据通信的方法流程图;
图6示出根据本申请另一个方面的一个实施例的一种用于功能手机网络应用的数据通信的系统框图。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本发明作进一步详细描述。
在本申请一个典型的配置中,所述功能手机系统各模块和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
HTTP(Hyper Text Transfer Protocol,超文本传输协议)是一个基于请求与响应模式的、无状态的、属于应用层、面向对象的协议,传输的数据都是未加密的,HTTPS是在HTTP下加入SSL(Secure Sockets Layer,安全套接字),即用SSL协议对HTTP协议传输的数据进行加密。
为更进一步阐述本申请所采取的技术手段及取得的效果,下面结合附图及优选实施例,对本申请的技术方案,进行清楚和完整的描述。
图1示出本申请一个方面的一个实施例的一种用于功能手机网络应用的数据通信的方法流程图,其中,所述方法包括:
S11基于网络应用获取HTTP/HTTPS请求;
S12基于HTTP/HTTPS请求专用内存空间使用情况解析所述HTTP/HTTPS请求,将已解析HTTP/HTTPS请求加入HTTP/HTTPS请求发送队列,其中,若所述HTTP/HTTPS请求专用内存空间不足,则提示HTTP/HTTPS请求失败;
S13基于socket专用内存空间使用情况接收所述已解析HTTP/HTTPS请求,将所述已解析HTTP/HTTPS请求封装成包含所述HTTP/HTTPS请求的socket数据,加入socket数据发送队列,其中,若所述socket专用内存空间不足,则通知HTTP/HTTPS请求队列重新发送所述HTTP/HTTPS请求;
S14与目标服务器建立socket连接,发送包含所述HTTP/HTTPS请求的socket数据,其中,若所述socket数据发送不成功,则基于预置的重发策略重新发送socket数据,直到所述socket数据发送成功,或者所述socket数据重新发送的次数超过重发策略预置的重发次数,提示HTTP/HTTPS请求超时;
S15删除所述socket数据发送队列中的所述socket数据,删除所述HTTP/HTTPS请求发送队列中的所述HTTP/HTTPS请求。
在本申请中,所述方法通过设备1执行,所述设备1为功能手机(feature phone),所述功能手机是移动电话的一种主要类别,功能手机除了能用来打电话及收发短信之外,还提供其它一些功能应用,例如拍照、音乐播放、收音机、简单的游戏、时钟、上网等,配备手机键盘。由于功能手机硬件资源以及开发工具的限制,通常功能手机上只能运行基于C或java等语言开发的应用。
在该实施例中,在所述步骤S11中,所述基于网络应用获取HTTP/HTTPS请求中,所述网络应用通常指安装在设备1上的网络应用软件,用户通过运行设备1上的网络应用软件来实现网络交互(包括但不限于例如访问网站、浏览网页)时,会传递相关参数,依次完成相应接口的调用,实现与目标服务器的数据通信,所述接口包括但不限于初始化接口、消亡接口、DNS解析接口、HTTP/HTTPS请求接口、HTTP/HTTPS取消请求接口,基于C语言的各接口说明如图2a~图2e所示。
其中,HTTP/HTTPS请求包括但不限于例如向特定的资源发出请求(GET)、向指定资源提交数据进行处理请求(POST)、向指定资源位置上传其最新内容(PUT)、请求服务器删除指定的资源等。其中,HTTP请求包括请求行(request line)、请求头部(header)、空行和请求主体(body)四个部分组成,其中所述请求行以一个请求符号(例如GET)开头,以空格分开,后面跟着请求的URL和协议的版本,以回车符和换行符结束,用来说明请求类型,要访问的资源以及所使用的协议版本;所述请求头部之后的空行是必须的,只有回车符和换行符;所述请求头部示紧接着请求行(即第一行)之后的部分,用来说明服务器要使用的附加信息;所述请求主体可以是用户添加任意的其他数据或者表单格式。
具体地,对于HTTP/HTTPS请求的数据解析是采用结构体形式完成的。其中,HTTP/HTTPS请求的请求头部采用键值对结构体;HTTP/HTTPS请求的主体为二进制数据时,采用二进制数据指针以及相关属性的结构体;HTTP/HTTPS请求方法若为POST,主体为表单格式数据,采用表单格式以及相关属性的结构体。
基于C语言的请求头部、数据块请求主体、表单格式主题的结构体说明如图3a~3c所示。
继续在该实施例中,在所述步骤S12中,所述基于HTTP/HTTPS请求专用内存空间使用情况,是指基于设备1为HTTP/HTTPS请求分配的专用内存空间,如果HTTP/HTTPS请求专用内存有足够空间,则基于内存管理规则,包括但不限于例如FIFO(FirstInFirstOut,先入先出)规则将所述步骤S11产生的HTTP/HTTPS请求存放入所述HTTP/HTTPS请求专用内存,对所述HTTP/HTTPS请求进行解析后将已解析的HTTP/HTTPS请求加入HTTP/HTTPS请求发送队列。其中,所述解析是对HTTP/HTTPS请求中包含的目标服务器域名进行解析,通过解析回调函数获得目标服务器的ip地址,基于C语言的解析回调函数说明如图4a所示。
其中,若HTTP/HTTPS请求专用内存空间不足,则提示HTTP/HTTPS请求失败。网络应用软件收到HTTP/HTTPS请求失败的提示后基于预置逻辑执行。
优选地,所述HTTP/HTTPS请求专用内存是预置的专用内存,其中,所述专用内存是静态分配的内存或动态分配的内存中任一项。
其中,通过配置HTTP/HTTPS请求内存属性开关可以为所述HTTP/HTTPS请求专用内存独立分配内存池,其它模块不能使用该内存池,提高系统运行的安全性。特别是如果功能手机配置的RAM较小,为所述HTTP/HTTPS请求专用内存独立分配内存池,可以大大提高系统运行的安全系数。
其中,若所述HTTP/HTTPS请求内存属性开关打开,则采用独立内存池,独立内存池的大小可通过参数设置,应根据功能手机可分配的内存大小设置合理数值,确保系统运行稳定。例如,在C语言中,可以用宏来配置所述HTTP/HTTPS请求内存管理属性开关,用宏或者常量等方式来定义所述独立内存池的大小。
其中,通过配置HTTP/HTTPS请求内存管理属性开关可以管理所述HTTP/HTTPS请求的内存分配,例如,配置HTTP/HTTPS请求内存管理属性开关打开,则采用的是动态内存管理方式,效率高,但影响系统运行时的内存连接检验;配置HTTP/HTTPS请求内存管理属性开关关闭,则采用的是静态内存管理方式,效率相对低,影响系统运行时内存的分配。如果功能手机配置的RAM较小,一般配置HTTP/HTTPS请求内存管理属性开关打开,效率高。
继续在该实施例中,在所述步骤S13中,所述基于socket专用内存空间使用情况,是指基于设备1为socket分配的专用内存空间,如果socket专用内存有足够空间,则基于内存管理规则,包括但不限于例如FIFO(FirstInFirstOut)规则将所述步骤S12发送的已解析HTTP/HTTPS请求存放入所述socket专用内存,封装成包含HTTP/HTTPS请求的socket数据,加入socket发送队列。其中,若socket专用内存空间不足,无法保存所述步骤S12发送的已解析HTTP/HTTPS请求,则通知HTTP/HTTPS请求发送队列重新发送所述已解析HTTP/HTTPS请求。
优选地,所述socket请求专用内存是预置的专用内存,其中,所述专用内存是动态分配的内存。
其中,为所述socket专用内存独立分配内存池,其它模块不能使用该内存池,提高系统运行的安全性。
其中,独立内存池的大小可通过参数设置,应根据功能手机可分配的内存大小设置合理数值,确保系统运行稳定。例如,在C语言中,可以用宏或者常量等方式来定义所述独立内存池的大小。
其中,通过配置socket内存管理属性开关可以管理所述socket的内存分配,默认socket内存管理属性开关打开,即采用的是动态内存管理方式,效率高。例如,在C语言中,可以用宏来配置所述socket内存管理属性开关。
优选地,所述HTTP/HTTPS请求发送队列支持的最大HTTP/HTTPS请求数大于socket队列支持的最大socket排队数。
其中,socket队列中的socket数据一直是请求中的状态,随时响应网络例如连接、写、读、关闭等各种消息,HTTP/HTTPS请求发送队列要大于socket队列,相应地,所述HTTP/HTTPS请求发送队列支持的最大HTTP/HTTPS请求数大于socket队列支持的最大socket排队数。
其中,HTTP/HTTPS请求发送队列支持的最大HTTP/HTTPS请求数可以通过参数设置,应根据功能手机可分配的内存大小设置合理数值,确保系统运行稳定。例如,在C语言中,可以用宏或者常量等方式来定义所述最大HTTP/HTTPS请求数。
其中,HTTP/HTTPS请求发送队列中的HTTP/HTTPS请求,还对应设置状态标识。socket队列与HTTP/HTTPS请求发送队列是一个联动的关系,socket队列发生变动,必然导致HTTP/HTTPS请求发送队列的变动;反之则不一定。
优选地,HTTP/HTTPS请求发送队列中的HTTP/HTTPS请求,还对应设置状态标识,其中所述状态标识用于表示请求中或者等待请求中。
继续在该实施例中,在所述步骤S14中,所述与目标服务器建立socket连接,发送包含所述HTTP/HTTPS请求的socket数据,其中,若所述socket数据发送不成功,则基于预置的重发策略重新发送socket数据,直到所述socket数据发送成功,或者所述socket数据重新发送的次数超过重发策略预置的重发次数,提示HTTP/HTTPS请求超时。
优选地,所述与目标服务器建立socket连接,包括同时建立多个socket连接,其中,同时建立的最大socket连接数是socket队列的最大排队数。
其中,通过配置socket连接管理属性开关可以配置同时开通的socket连接数量,所述属性开关打开,则表示只允许同时建立一个socket连接,不支持同时建立多个socket连接,不支持并行传输;所述属性开关关闭,则表示允许同时建立多个socket连接,支持并行传输。对于配置较低的功能手机,建议该属性开关打开,只允许同时建立一个socket连接,确保系统运行稳定。例如,在C语言中,可以用宏来配置所述socket连接管理属性开关。
其中,若所述socket连接管理属性开关关闭,允许同时建立的最大socket连接数可通过参数设置,应根据功能手机可分配的内存大小设置合理数值,确保系统运行稳定。例如,在C语言中,可以用宏或者常量等方式来定义同时建立的最大socket连接数。
其中,所述基于预置的重发策略主要是重发次数的设置,应根据功能手机的网络模块性能合理设置重发次数,默认重发次数设置为3次。例如,在C语言中,可以用宏或者常量等方式来设置重发次数。
继续在该实施例中,在所述步骤S15中,所述删除所述socket数据发送队列中的所述socket数据,删除所述HTTP/HTTPS请求发送队列中的所述HTTP/HTTPS请求。
其中,在完成数据通信后,删除socket数据发送队列中已发送的所述socket数据,释放内存空间用于存放后续socket数据。
其中,删除HTTP/HTTPS请求发送队列中已失效的HTTP/HTTPS请求,所述失效包括但不限于用户取消的HTTP/HTTPS请求、已正常完成的HTTP/HTTPS请求、超时的HTTP/HTTPS请求等。
其中,通过HTTP/HTTPS请求回调函数来返回HTTP/HTTPS请求后的状态及数据,基于C语言的请求回调函数说明如图4b所示。
图5示出根据本申请一个方面的另一个实施例的一种用于功能手机网络应用的数据通信的方法流程图,所述一种用于功能手机网络应用的数据通信的方法包括步骤S51~S58,其中,步骤S51~S55与图1实施例中的步骤S11~S15相同或者基本相同,在此,不再赘述。
在该实施例中还包括S56~S58,其中:
S56接收包含所述HTTP/HTTPS请求响应数据的socket数据,关闭socket连接;
S57解封装所述HTTP/HTTPS请求响应数据的socket数据,获取所述HTTP/HTTPS请求响应数据;
S58向网络应用返回所述HTTP/HTTPS请求响应数据。
在该实施例中,在所述步骤S56中,所述接收包含所述HTTP/HTTPS请求响应数据的socket数据,关闭socket连接。
其中,接收到目标服务器返回的包含所述HTTP/HTTPS请求响应数据的socket数据,关闭socket连接,及时释放连接通道资源。
继续在该实施例中,在所述步骤S57中,所述解封装所述HTTP/HTTPS请求响应数据的socket数据,获取所述HTTP/HTTPS请求响应数据。
其中,所述socket数据解封装,根据当前socket队列的句柄判断是不是对应所述HTTP/HTTPS请求响应数据,若不是,将过滤不处理,若是,则获取所述HTTP/HTTPS请求响应数据。
继续在该实施例中,在所述步骤S58中,所述向网络应用返回所述HTTP/HTTPS请求响应数据,其中,获取到所述HTTP/HTTPS请求响应数据,回调给应用层,使得网络应用获取所述HTTP/HTTPS请求响应数据,在网络应用中渲染展现。
图6示出根据本申请另一个方面的一个实施例的一种用于功能手机网络应用的数据通信的系统框图,其中,所述系统包括:
HTTP/HTTPS接口模块61,用于基于网络应用获取HTTP/HTTPS请求,向网络应用返回所述HTTP/HTTPS请求响应数据;
HTTP/HTTPS控制模块62,用于管理HTTP/HTTPS请求专用内存,解析HTTP/HTTPS请求,管理HTTP/HTTPS请求发送队列;
socket控制模块63,用于管理socket专用内存和socket数据发送队列;
socket操作模块64,用于与目标服务器建立socket连接,发送包含所述HTTP/HTTPS请求的socket数据,接收包含所述HTTP/HTTPS请求响应数据的socket数据,在完成包含所述HTTP/HTTPS请求响应数据的socket数据接收后,关闭socket连接。
在该实施例中,所述系统包括4个模块,根据与网络应用软件的数据对接,由上往下,
第一层是所述HTTP/HTTPS接口模块61,完成HTTP/HTTPS请求发起前业务接口的初始化,以及网络应用接收完响应数据后释放资源,用于基于网络应用获取HTTP/HTTPS请求,向网络应用返回所述HTTP/HTTPS请求响应数据。所述业务接口实现简单,开发人员易于理解,使用方便。
第二个层是所述HTTP/HTTPS控制模块62,完成协议解析、内存管理以及队列管理,用于管理HTTP/HTTPS请求专用内存,解析HTTP/HTTPS请求,管理HTTP/HTTPS请求发送队列。该模块主要实现HTTP/HTTPS请求的逻辑控制,保证系统运行的稳定性。
第三层是socket控制模块63,完成socket队列和内存管理,以及过滤、数据容错处理,用于管理socket专用内存和socket数据发送队列。该模块主要实现socket的逻辑控制,保证系统运行的稳定性。
第四层是socket操作模块64,完成socket连接的创建、socket数据发送、响应的socket数据接收、socket连接关闭,用于与目标服务器建立socket连接,发送包含所述HTTP/HTTPS请求的socket数据,接收包含所述HTTP/HTTPS请求响应数据的socket数据,在完成包含所述HTTP/HTTPS请求响应数据的socket数据接收后,关闭socket连接。
在该实施例中,所述系统架构独立于功能手机平台,不同平台仅做少量接口配置等开发工作,无需编辑逻辑即可移植本系统架构,大大减少了开发人员的代码开发和维护工作量。
根据本申请的又一方面,还提供了一种计算机可读介质,所述计算机可读介质存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现前述方法。
根据本申请的又一方面,还提供了一种用于网络应用的功能手机,其中,所述功能手机包括:
一个或多个处理器;以及
存储有计算机可读指令的存储器,所述计算机可读指令在被执行时使所述处理器执行如前述方法的交互。
例如,计算机可读指令在被执行时使所述一个或多个处理器:
获取网络应用发起的HTTP/HTTPS请求,解析所述HTTP/HTTPS请求,将已解析HTTP/HTTPS请求加入HTTP/HTTPS请求发送队列,将HTTP/HTTPS请求发送队列发出的所述已解析HTTP/HTTPS请求封装成包含所述HTTP/HTTPS请求的socket数据,加入socket数据发送队列,与目标服务器建立socket连接,发送包含所述HTTP/HTTPS请求的socket数据,删除所述socket数据发送队列中的所述socket数据,删除所述HTTP/HTTPS请求发送队列中的所述HTTP/HTTPS请求。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
Claims (9)
1.一种用于功能手机网络应用的数据通信方法,其特征在于,所述方法包括:
基于网络应用获取HTTP/HTTPS请求;
基于HTTP/HTTPS请求专用内存空间使用情况解析所述HTTP/HTTPS请求,将已解析HTTP/HTTPS请求加入HTTP/HTTPS请求发送队列,其中,若所述HTTP/HTTPS请求专用内存空间不足,则提示HTTP/HTTPS请求失败;
基于socket专用内存空间使用情况接收所述已解析HTTP/HTTPS请求,将所述已解析HTTP/HTTPS请求封装成包含所述HTTP/HTTPS请求的socket数据,加入socket数据发送队列,其中,若所述socket专用内存空间不足,则通知HTTP/HTTPS请求队列重新发送所述已解析HTTP/HTTPS请求;
与目标服务器建立socket连接,发送包含所述HTTP/HTTPS请求的socket数据,其中,若所述socket数据发送不成功,则基于预置的重发策略重新发送socket数据,直到所述socket数据发送成功,或者所述socket数据重新发送的次数超过重发策略预置的重发次数,提示HTTP/HTTPS请求超时;
删除所述socket数据发送队列中的所述socket数据,删除所述HTTP/HTTPS请求发送队列中的所述HTTP/HTTPS请求。
2.根据权利要求1所述的方法,其特征在于,所述HTTP/HTTPS请求发送队列支持的最大HTTP/HTTPS请求数大于socket队列支持的最大socket排队数。
3.根据权利要求1或2所述的方法,其特征在于,所述HTTP/HTTPS请求发送队列中的HTTP/HTTPS请求,还对应设置状态标识,其中,所述状态标识用于表示请求中或者等待请求中。
4.根据权利要求1所述的方法,其特征在于,所述HTTP/HTTPS请求专用内存是预置的专用内存,其中,所述专用内存是静态分配的内存或动态分配的内存中任一项。
5.根据权利要求1所述的方法,其特征在于,所述socket专用内存是预置的专用内存,其中,所述专用内存是动态分配的内存。
6.根据权利要求1所述的方法,所述与目标服务器建立socket连接,包括同时建立多个socket连接,其中,同时建立的最大socket连接数是socket队列的最大排队数。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收包含所述HTTP/HTTPS请求响应数据的socket数据,关闭socket连接;
解封装所述HTTP/HTTPS请求响应数据的socket数据,获取所述HTTP/HTTPS请求响应数据;
向网络应用返回所述HTTP/HTTPS请求响应数据。
8.一种计算机可读介质,其中,
其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现如权利要求1至7中任一项所述的方法。
9.一种用于网络应用的功能手机,其中,所述功能手机包括:
一个或多个处理器;以及
存储有计算机可读指令的存储器,所述计算机可读指令在被执行时使所述处理器执行如权利要求1至7中任一项所述方法的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911150315.3A CN110995798B (zh) | 2019-11-21 | 2019-11-21 | 一种用于功能手机网络应用的数据通信方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911150315.3A CN110995798B (zh) | 2019-11-21 | 2019-11-21 | 一种用于功能手机网络应用的数据通信方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110995798A CN110995798A (zh) | 2020-04-10 |
CN110995798B true CN110995798B (zh) | 2022-03-18 |
Family
ID=70085570
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911150315.3A Active CN110995798B (zh) | 2019-11-21 | 2019-11-21 | 一种用于功能手机网络应用的数据通信方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110995798B (zh) |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7448047B2 (en) * | 2004-04-29 | 2008-11-04 | Sybase, Inc. | Database system with methodology for providing stored procedures as web services |
US8769127B2 (en) * | 2006-02-10 | 2014-07-01 | Northrop Grumman Systems Corporation | Cross-domain solution (CDS) collaborate-access-browse (CAB) and assured file transfer (AFT) |
CN103905484B (zh) * | 2012-12-26 | 2017-08-01 | 北京新媒传信科技有限公司 | 处理超文本传输协议请求的方法及装置 |
CN103338160B (zh) * | 2013-07-19 | 2016-04-20 | 天津汉柏信息技术有限公司 | 基于缓存队列的轮询业务的优化系统及优化方法 |
CN105159929A (zh) * | 2015-08-05 | 2015-12-16 | 北京思特奇信息技术股份有限公司 | 一种内存数据库通信方法及系统 |
CN105141603B (zh) * | 2015-08-18 | 2018-10-19 | 北京百度网讯科技有限公司 | 通信数据传输方法及系统 |
WO2018018640A1 (zh) * | 2016-07-29 | 2018-02-01 | 华为技术有限公司 | 信息交互方法、装置及系统 |
CN106530438B (zh) * | 2016-09-26 | 2018-12-18 | 浙江大学宁波理工学院 | 一种海量实时行车记录仪数据采集方法及系统 |
CN108011927A (zh) * | 2017-11-08 | 2018-05-08 | 东软集团股份有限公司 | 请求数据的方法、装置以及存储介质和电子设备 |
-
2019
- 2019-11-21 CN CN201911150315.3A patent/CN110995798B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110995798A (zh) | 2020-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10515058B2 (en) | Unified file and object data storage | |
US8605667B2 (en) | Systems and methods for exposing different service facades of an underlying network | |
US7747724B2 (en) | System and method of device-to-server registration | |
US7277915B2 (en) | Application-based protocol and proxy selection by a mobile device in a multi-protocol network environment | |
US10313282B1 (en) | Flexible middleware messaging system | |
US11627169B2 (en) | Network-based Media Processing (NBMP) workflow management through 5G Framework for Live Uplink Streaming (FLUS) control | |
US9128886B2 (en) | Computer implemented method, computer system, electronic interface, mobile computing device and computer readable medium | |
US8340652B2 (en) | System and method of waste management | |
WO2022090847A1 (en) | Handling deferrable network requests | |
US7082465B1 (en) | Web based management of host computers in an open protocol network | |
CN110995798B (zh) | 一种用于功能手机网络应用的数据通信方法和系统 | |
WO2021201942A1 (en) | 3rd generation partnership project (3gpp) framework for live uplink streaming (flus) sink capabilities determination | |
US11546405B2 (en) | Methods for exposing mainframe data as a web service and devices thereof | |
EP1875372B1 (en) | System and method of application persistence | |
US7702770B1 (en) | Web services enterprise integration with service oriented architecture | |
CN114416404A (zh) | 一种远程过程调用方法及装置 | |
CN114979269A (zh) | 接受管理端管理Web中间件的方法、存储介质和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20221107 Address after: No.66 Miaojing Road, Minhang District, Shanghai, 201199 Patentee after: Shanghai Longqi Intelligent Technology Co.,Ltd. Address before: Floor 1, Building 401 Caobao Road, Xuhui District, Shanghai, 2003 Patentee before: SHANGHAI LONGCHEER TECHNOLOGY Co.,Ltd. |