CN103716410A - 基于Open API的数据上传方法及系统 - Google Patents
基于Open API的数据上传方法及系统 Download PDFInfo
- Publication number
- CN103716410A CN103716410A CN201410003421.XA CN201410003421A CN103716410A CN 103716410 A CN103716410 A CN 103716410A CN 201410003421 A CN201410003421 A CN 201410003421A CN 103716410 A CN103716410 A CN 103716410A
- Authority
- CN
- China
- Prior art keywords
- user
- api
- uao
- data
- uploading
- 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.)
- Pending
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及一种基于Open API的数据上传方法及系统,该方法包括:上传加速开放应用编程接口UAO API服务器接收来自网络终端的用户的登录请求,所述登录请求包括应用标识符APPID和第一密码;所述UAO API服务器判断所述APPID和第一密码是否匹配;如果匹配成功,接受用户访问网络服务器的用户名、第二密码和cookie信息;所述UAO API服务器接收用户上传的数据;所述UAO API服务器以用户的名义,将上传数据发送给用户指定的网络服务器。该系统包括:REST API模块、UAO API处理模块、数据上传模块和数据处理模块。本发明是以Open API为基础,用户无需安装客户端,就可以实现多业务和多平台的支持。
Description
技术领域
本发明涉及数据传输技术,特别涉及一种基于Open API的数据上传方法及系统。
背景技术
随着网络技术的迅猛发展,网络硬盘、微博、视频分享等作为一种新的网络应用得到快速推广,这些网络应用在给用户带来方便的同时,产生的上行数据流量也随之大幅度增加。提高上行数据流量的传输速率,提升用户在上传文件过程中的体验吸引了业界的广泛关注。
目前,基于缓存、多线程等上传优化技术的推广,一定程度上缓解了用户对大数据上传的需要。比如,百度网盘推出的“极速上传”技术,用户安装百度网盘提供的客户端,就可以使用快速上传技术。金山网盘、迅载网盘等网络硬盘服务商也推出了类似上传加速技术。然而,用户在使用上述加速技术的时候面临着一个客户端不能通用的问题,使用百度网盘需要安装百度网盘客户端,使用金山快盘需要安装金山快盘客户端。即使换了一个平台,也需要重新安装客户端,因为Windows下的客户端和Android、OS下的客户端是不能通用的。如果用户选择不安装客户端,就无法使用上传加速技术。
另外,用户选择安装网盘服务商提供的客户端上传文件,在得到上传已经成功的提示以后,也需要保持网络连接。这个时候,加速客户端在后台还需要一段时间进行上传处理。因为,将一个1G大小的文件用几秒钟就上传到网络服务器上,对网络带宽的要求会非常大。视频分享、微博等网络应用也面临着同样的问题,也就是上传加速客户端不能通用,不能跨平台使用。
发明内容
本发明的目的是以Open API为基础,使数据上传速度加快,无需安装客户端,仅需要通过Web在UAO API服务器上简单注册就可以实现对多个网络上传应用的支持,同时支持多平台。
为实现上述目的,本发明提供了一种基于Open API数据上传方法及系统,该方法包括以下步骤:
上传加速开放应用编程接口UAO API服务器接收来自网络终端的用户的登录请求,所述登录请求包括应用标识符APPID和第一密码;
所述UAO API服务器判断所述APPID和第一密码是否匹配;如果匹配成功,接受用户访问网络服务器的用户名、第二密码和cookie信息;
所述UAO API服务器接收用户上传的数据;
所述UAO API服务器以用户的名义,将上传数据发送给用户指定的网络服务器。
进一步地,UAO API服务器接收来自网络终端的用户的登录请求之前包括:所述用户通过所述网络终端在所述网络服务器上进行注册,注册成功后,获取所述网络服务器分配的所述用户访问网络服务器的用户名和第二密码。
进一步地,在所述UAO API服务器对所述用户注册,所述UAO API服务器向所述用户分配所述APPID和第一密码。
进一步地,所述UAO API服务器是通过表述性状态转移网络REST Web与所述网络终端通信。
进一步地,所述UAO API服务器判断所述用户通过所述网络终端登录成功后,接收所述用户对所述上传能力的查询、变更或注销请求。
进一步地,所述UAO API服务器接收所述用户通过网络终端上传的上传数据后,接收所述用户对所述上传数据的信息查询或状态查询请求。
进一步地,所述UAO API服务器以用户的名义,将上传数据发送给用户指定的网络服务器之前还包括:所述UAO API服务器将所述上传数据进行缓存,以网络服务器的名义向用户回复响应信息。
进一步地,所述UAO API服务器以用户的名义,将上传数据发送给用户指定的网络服务器之后还包括:所述UAO API服务器接受所述网络服务器回复给用户的响应信息。
进一步地,在UAO API服务器确定通过所述网络终端登录成功后,UAO API服务器接收所述用户访问多个网络服务器上的用户名和密码。
另一方面,本发明提供了一种基于Open API数据上传系统,该系统包括REST API模块、UAO API处理模块、数据上传模块和数据处理模块。
REST API模块接收并且将网络终端的用户提交的APPID和密码传送给UAOAPI处理模块;
UAO API处理模块将所述REST API模块提交的APPID和密码进行匹配,如果匹配成功,允许REST API模块接受用户访问网络服务器的用户名、第二密码和cookie信息,以及接收用户的上传数据;
UAO API处理模块将所述上传数据处理后,传送给所述数据处理模块,所述数据处理模块再将所述上传数据传送给数据库;UAO API处理模块向所述数据上传模块发送上传消息,促使所述数据上传模块以用户名指定的用户的名义将所述上传数据发送到所述用户指定的所述网络服务器,其中所述以用户的名义包括用户名、第二密码。
本发明的主要优点在于:
1、用户与UAO API服务器之间使用标准的REST Web通信,不需要安装任何客户端;
2、用户使用UAO API分配的APPID可以注册多个网络应用,比如对百度网盘的应用、对金山网盘的应用、对163邮件的应用等,当用户使用APPID登录以后,就可以直接对已注册的网络应用进行加速上传。
3、用户与UAO API服务器之间使用标准的REST Web通信,与用户使用的平台类型、操作系统无关。
附图说明
图1为本发明实施例提供的一种基于Open API的数据上传方法流程图;
图2为本发明实施例提供的一种基于Open API的数据上传方法应用场景示意图;
图3为本发明实施例提供的一种数据传输系统的示意图;
图4为第三方开发者注册应用示意图;
图5为系统实施图;
图6为业务类API处理流程图;
图7为管理类API处理流程图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
图1为本发明实施例提供的一种基于Open API的数据上传方法流程图。如图1所示,该方法包括如下步骤:
步骤101,上传加速开放应用编程接口UAO API服务器接收来自网络终端的用户的登录请求,所述登录请求包括应用标识符APPID和第一密码;
步骤102,所述UAO API服务器判断所述APPID和第一密码是否匹配;如果匹配成功,接受用户访问网络服务器的用户名、第二密码和cookie信息;
步骤103,所述UAO API服务器接收用户上传的数据;
步骤104,所述UAO API服务器以用户的名义,将上传数据发送给用户指定的网络服务器。
优先地,在步骤101之前,用户通过网络终端在网络服务器上进行注册,注册成功后,获取网络服务器分配的用户访问网络服务器的用户名和第二密码;在UAO API(Upload Acceleration Open Application ProgrammingInterface,上传加速开放应用编程接口)服务器对用户注册,UAO API服务器向用户分配APPID和第一密码;
应用不需要安装客户端,通过标准REST(Representation StateTransfer,表述性状态转移)Web与UAO API服务器进行通信,与应用使用的终端平台类型、操作系统等没有任何关系。
REST是一种针对网络应用的设计和开发方式,指的是一组架构约束条件和原则,可以降低开发的复杂性,提高系统的可伸缩性,提供对不同平台、不同系统的兼容性。
优先地,在步骤104之前,UAO API服务器将上传数据进行缓存,以网络服务器的名义向用户回复响应信息。
优先地,UAO API服务器判断应用通过网络终端登录成功后,接收用户对上传能力的查询、变更或注销请求。
UAO API服务器接收应用通过网络终端上传的上传数据后,接收应用对所述上传数据的信息查询或状态查询请求。
图2为本发明实施例提供的一种基于Open API的数据上传方法应用场景示意图。如图2所示,在离用户最近的网络接入设备GW(Gateway,网关)、AP(Access Point,接入点)或者BS(Base Station,基站)上串行一个UAO API服务器,UAO API服务器对用户的上传数据进行缓存,然后UAO API服务器将用户的上传数据传送到用户指定的网络服务器中。
用户指定的网络服务器可以为百度网盘、金山网盘、迅载网盘和163网盘等。
由于UAO API服务器串行在接入设备旁,离用户很近,甚至处于同一个局域网内,所以,误码率小,上传速度快,用户体验好,数据传输成功率高。用户将上传数据传送成功以后,不需要再进行网络连接,因为用户的所有数据信息已经存储到UAO API服务器上,UAO API服务器会为用户进行下一步的后续上传工作。
用户与UAO API服务器通过标准的HTTP进行通信,用户不需要安装客户端,就可以跨平台使用,操作简单方便。
图3为本发明实施例提供的一种数据传输系统的示意图。如图3所示,UAO API200模块包括数据处理模块210、UAO API处理模块220、REST API模块230、数据上传模块240和数据库250;
REST API模块230,用于向用户分配APPID和密码,将用户提交的APPID和密码传送给UAO API处理模块220,处理用户上传数据,提取网络服务器URL,提取用户cookie信息,提供网络服务和API接口。
UAO API处理模块220,用于将REST API模块230提交的APPID和密码进行匹配,如果匹配成功,向REST API模块230回复响应信息;
将REST API模块230提交的上传数据处理后,传送给数据处理模块210,数据处理模块210再将上传数据传送给数据库250;
向数据上传模块240发送上传消息,促使数据上传模块240将上传数据发送到用户指定的网络服务器;
对数据上传模块240收到的网络服务器的响应信息进行处理。
数据上传模块240,用于将数据库250中缓存的上传数据进行处理,将处理后的上传数据发送到用户指定的网络服务器中,接收用户指定的网络服务器回复的响应信息。
数据处理模块210,用于接收UAO API处理模块220处理的上传数据,将上传数据传送给数据库250;接收数据库250发送的上传数据。
数据库模块250,用于对上传数据进行存储。
REST API模块230包括Link管理模块231、Jetty模块232和REST Ease模块233。
Link管理模块231,用于向用户分配APPID和密码,将用户提交的APPID和密码传送给UAO API处理模块220,处理用户上传数据,提取网络服务器URL,提取用户cookie信息。
REST Ease模块233,是通过http访问的API。
Jetty模块232,用于提供网络服务。
数据上传模块240包括发送模块241、接收模块242、处理子模块243。
处理子模块243,用于将数据库250中缓存的所述上传数据进行处理。
发送模块241,用于将处理后的上传数据发送到用户指定的网络服务器中。
接收模块242,接收用户指定的网络服务器回复的响应信息。
本发明实施例以Open API为基础,实现数据的快速上传,用户不需要安装客户端,利用UAO API服务器对用户提供的数据信息进行缓存,就可以实现数据的上传。
下面以第三方开发者为应用实例介绍第三方开发者在UAO API服务器上的注册应用。
图4为第三方开发者注册应用示意图。如图4所示,具体注册过程为:
步骤401,第三方开发者在自己的网站上进行代码封装;参见表1所示的本发明实施例提供的供第三方开发者调用、封装的API类型。
表1
API功能描述 | URI | HTTP请求方式 | 支持格式 |
业务能力注册 | http://[host:port]/v1/app/regist | GET | JSON |
业务能力变更 | http://[host:port]/v1/app/update | GET | JSON |
业务能力注销 | http://[host:port]/v1/app/cancel | GET | JSON |
应用登录 | http://[host:port]/v1/app/appLogin | POST | JSON |
应用退出 | http://[host:port]/v1/app/appLogout | GET | JSON |
上传文件 | http://[host:port]/v1/app/upload | POST | JSON |
上传信息查询 | http://[host:port]/v1/upload/info | GET | JSON |
上传状态查询 | http://[host:port]/v1/upload/status | GET | JSON |
步骤402,第三方开发者在UAO API服务器上进行注册,并提交第三方应用的信息;
步骤403,如果注册成功,UAO API服务器会给第三方开发者分配APPID和登录密码;
步骤404,第三方开发者使用APPID和登录密码与UAO API服务器进行数据交互。同时UAO API和第三方开发者之间使用标准的REST Web通信。
下面以第三方开发者开发一个上传加速应用程序为例介绍Open API的具体实施方案。用户使用的网络终端的IP地址为192.168.64.20,UAO API接入网关的IP地址为192.168.64.10,默认网关(192.168.64.1)接入互联网。图5为系统实施图。如图5所示,
步骤501,第三方开发者在百度网盘(http://pan.baidu.com)注册用户名和密码,并取得百度网盘的上传操作;
步骤502,第三方开发者在金山网盘(http://kuaipan.cn)注册用户名和密码,并取得金山网盘的上传操作;
步骤503,第三方开发者登录UAO API服务器进行注册,并提交百度网盘和金山网盘的URL、登录信息以及用户cookie信息等;参见表2所示的注册HTTP数据包格式表。
表2
步骤504,注册成功之后,UAO API服务器会给第三方开发者分配APPID和密码;
步骤505,第三方开发者通过使用UAO API服务器分配的APPID和密码登录UAO API服务器;
步骤506,在UAO API服务器中,选择需要上传的服务器,然后上传文件;
步骤507,UAO API服务器对第三方开发者上传的文件进行缓存,并对第三方开发者进行缓存信息回复;
步骤508,UAO API服务器将缓存文件上传给第三方开发者指定的服务器。参见表3所示的上传数据HTTP数据包格式表。
表3
用户对上传信息或上传状态进行查询,参见图7所示的管理类API处理流程图以及参见表4所示的上传文件状态查询HTTP数据包格式表和表5所示的上传文件信息查询HTTP数据包格式表。
表4
表5
当第三方开发者通过使用UAO API服务器分配的APPID和密码登录UAOAPI服务器时,第三方开发者可以对注册信息进行变更或注销,参见图6为业务类API处理流程图。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于Open API的数据上传方法,其特征在于,所述方法包括:
上传加速开放应用编程接口UAO API服务器接收来自网络终端的用户的登录请求,所述登录请求包括应用标识符APPID和第一密码;
所述UAO API服务器判断所述APPID和第一密码是否匹配;如果匹配成功,接受用户访问网络服务器的用户名、第二密码和cookie信息;
所述UAO API服务器接收用户上传的数据;
所述UAO API服务器以用户的名义,将上传数据发送给用户指定的网络服务器。
2.根据权利要求1所述的基于Open API的数据上传方法,其特征在于,UAO API服务器接收来自网络终端的用户的登录请求之前包括:
所述用户通过所述网络终端在所述网络服务器上进行注册,注册成功后,获取所述网络服务器分配的所述用户访问网络服务器的用户名和第二密码。
3.根据权利要求1所述的基于Open API的数据上传方法,其特征在于,在所述UAO API服务器对所述用户注册,所述UAO API服务器向所述用户分配所述APPID和第一密码。
4.根据权利要求1所述的基于Open API的数据上传方法,其特征在于,所述UAO API服务器是通过表述性状态转移网络REST Web与所述网络终端通信。
5.根据权利要求1所述的基于Open API的数据上传方法,其特征在于,所述UAO API服务器判断所述用户通过所述网络终端登录成功后,接收所述用户对所述上传能力的查询、变更或注销请求。
6.根据权利要求1所述的基于Open API的数据上传方法,其特征在于,所述UAO API服务器接收所述用户通过网络终端上传的上传数据后,接收所述用户对所述上传数据的信息查询或状态查询请求。
7.根据权利要求1所述的基于Open API的数据上传方法,其特征在于,所述UAO API服务器以用户的名义,将上传数据发送给用户指定的网络服务器之前还包括:
所述UAO API服务器将所述上传数据进行缓存,以网络服务器的名义向用户回复响应信息。
8.根据权利要求1所述的基于Open API的数据上传方法,其特征在于,所述UAO API服务器以用户的名义,将上传数据发送给用户指定的网络服务器之后还包括:所述UAO API服务器接受所述网络服务器回复给用户的响应信息。
9.根据权利要求1所述的基于Open API的数据上传方法,其特征在于,在UAO API服务器确定通过所述网络终端登录成功后,UAO API服务器接收所述用户访问多个网络服务器上的用户名和密码。
10.一种基于Open API的数据上传系统,其特征在于,所述系统包括表述性状态转移应用编程接口REST API模块、UAO API处理模块、数据上传模块和数据处理模块;
REST API模块接收并且将网络终端的用户提交的APPID和密码传送给UAOAPI处理模块;
UAO API处理模块将所述REST API模块提交的APPID和密码进行匹配,如果匹配成功,允许REST API模块接受用户访问网络服务器的用户名、第二密码和cookie信息,以及接收用户的上传数据;
UAO API处理模块将所述上传数据处理后,传送给所述数据处理模块,所述数据处理模块再将所述上传数据传送给数据库;UAO API处理模块向所述数据上传模块发送上传消息,促使所述数据上传模块以用户名指定的用户的名义将所述上传数据发送到所述用户指定的所述网络服务器,其中所述以用户的名义包括用户名、第二密码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410003421.XA CN103716410A (zh) | 2014-01-03 | 2014-01-03 | 基于Open API的数据上传方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410003421.XA CN103716410A (zh) | 2014-01-03 | 2014-01-03 | 基于Open API的数据上传方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103716410A true CN103716410A (zh) | 2014-04-09 |
Family
ID=50408979
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410003421.XA Pending CN103716410A (zh) | 2014-01-03 | 2014-01-03 | 基于Open API的数据上传方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103716410A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101350717A (zh) * | 2007-07-18 | 2009-01-21 | 中国移动通信集团公司 | 一种通过即时通信软件登录第三方服务器的方法及系统 |
CN102111410A (zh) * | 2011-01-13 | 2011-06-29 | 中国科学院软件研究所 | 一种基于代理的单点登录方法及系统 |
CN103401892A (zh) * | 2013-06-26 | 2013-11-20 | 中国科学院声学研究所 | 一种基于http post的数据上传加速方法及服务器 |
-
2014
- 2014-01-03 CN CN201410003421.XA patent/CN103716410A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101350717A (zh) * | 2007-07-18 | 2009-01-21 | 中国移动通信集团公司 | 一种通过即时通信软件登录第三方服务器的方法及系统 |
CN102111410A (zh) * | 2011-01-13 | 2011-06-29 | 中国科学院软件研究所 | 一种基于代理的单点登录方法及系统 |
CN103401892A (zh) * | 2013-06-26 | 2013-11-20 | 中国科学院声学研究所 | 一种基于http post的数据上传加速方法及服务器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12028707B2 (en) | Apparatus, system, method, and computer-readable medium for performing a message service and identity service in a 5G network | |
US10313858B2 (en) | Service layer interworking using MQTT protocol | |
US7502335B2 (en) | Method for allocating IP addresses for peer-to-peer wireless instant messaging and other data communications | |
EP2606624B1 (en) | Method and apparatus of automated discovery in communication network | |
JP5739023B2 (ja) | 割り当てられたネットワークアドレスを有するデバイスにアクセスするウェブプロキシサーバを使用したシステムおよび方法 | |
EP3298806B1 (en) | Methods and apparatus for analyzing and grouping service layer subscriptions and notifications for enhanced efficiency | |
CN106664676B (zh) | 在无线通信系统中通过访问层提供服务连接的设备和方法 | |
CN114338827B (zh) | 物联网协议适配网关、方法及可读存储介质 | |
CN102388632A (zh) | 应用信息推送方法、系统和网元 | |
WO2009008815A1 (en) | Systems and methods for pushing messages to mobile terminals | |
CN103997479B (zh) | 一种非对称服务ip代理方法和设备 | |
CN101599921B (zh) | 一种企业即时通信系统及其文件传输方法 | |
CN102882772A (zh) | 一种即时通信数据传输方法、客户端、服务器及系统 | |
CN111935312A (zh) | 一种工业互联网容器云平台及其流量接入控制方法 | |
CN109076095A (zh) | 用于数据分发的方法、装置和计算机程序产品 | |
US9439049B2 (en) | System and method for message service gateway | |
US20100128714A1 (en) | Method and system for synchronizing data between mobile terminal and internet phone | |
WO2017185934A1 (zh) | 一种管理设备及设备管理方法 | |
CN103546426A (zh) | 信息共享方法、管理服务器 | |
EP3874774B1 (en) | Filters for bulk subscriptions | |
CN105306577A (zh) | 基于app的手持设备间的资料共享系统及方法 | |
EP3198804B1 (en) | Method, apparatus, system and media for transmitting messages between networked devices in data communication with a local network access point | |
CN103731400A (zh) | 共享资源的系统和方法 | |
US8060568B2 (en) | Real time messaging framework hub to intercept and retransmit messages for a messaging facility | |
CN110856145A (zh) | 基于近场认证的iot设备与用户绑定方法、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140409 |