一种通用webservice接口的实现方法与流程

文档序号:12863844阅读:3958来源:国知局

本发明涉及软件开发领域,尤其涉及一种通用webservice接口的实现方法。



背景技术:

随着网络技术的发展,数据交互越来越重要。现代网络信息数据交互共享,采用国际标准的webservice接口进行。

由于数据需要的不同,数据需要的单位不同,各个数据库实现webservice接口服务,都需要编程人员针对需要的内容,开发对应的webservice接口。成本高、效率低。



技术实现要素:

鉴于目前技术存在的上述不足,本发明提供一种通用webservice接口的实现方法,本发明提供了实现数据共享的webservice服务,无需软件开发人员再开发软件接口,只需要部署了本发明的通用接口,用户只需进行数据选择,即可实现webservice服务。

本发明的采用如下技术方案:

一种通用webservice接口的实现方法,包括以下步骤:

基于数学模型编写webservice接口;

基于所述webservice接口调用数据库;

建立与所述webservice接口匹配的数据库调用接口;

基于所述数据库调用接口获取信息,实现webservice服务。

作为本发明的优选技术方案,所述webservice接口根据提交上来的sql命令调用数据库。

作为本发明的优选技术方案,所述建立与所述webservice接口匹配的数据库调用接口的步骤包括:

基于javascript封装一套ajax的调用接口;

基于所述ajax的调用接口与所述webservice接口进行匹配。

作为本发明的优选技术方案,所述javascript中sql语言通过<sql></sql>标记来表示,在服务器端读取文件时对<sql></sql>标记的内容做加密替换。

作为本发明的优选技术方案,所述基于所述数据库调用接口获取信息,实现webservice服务的步骤中包括:

当webservice接收到命令的时候,判断是get还是post,如果是get命令就读取http请求中的文件名,然后读取该文件返回给请求方;

如果命令是post,则根据http请求中的文件名做判断,如果是/upload则表示上传文件操作,此时将上传的文件从http请求中分离出来并保存到目录下;

如果是/dbif则说明是数据库调用,发送来的http请求是xml封装的sql语句。

作为本发明的优选技术方案,所述如果是/dbif则说明是数据库调用,发送来的http请求是xml封装的sql语句的步骤中包括:

当接收到validaccount命令,post过来的xml中需要包含用户名和密码信息,在webservice验证是否合法,并将结果封装成xml返回请求方;

当接收到logoff命令,webservice清除保存在session中的账号登录状态,如果用户访问页面会自动跳转到登录页面;

当受到execsql命令后,post过来的xml中包含sql语句,execsql的sql语句,则执行结果封装成xml返回请求方;

当受到querysql命令后,post过来的xml中包含sql语句,querysql的sql语句,执行结果封装成xml返回请求方。

本发明涉及一种通用webservice接口的实现方法具有以下优点: 本发明提供了实现数据共享的webservice服务,无需软件开发人员再开发软件接口,只需要部署了本发明的通用接口,用户只需进行数据选择,即可实现webservice服务。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施的流程示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,本发明提供一种通用webservice接口的实现方法,包括以下步骤:

步骤s1:基于数学模型编写webservice接口,使用编程工具,编写一个数学模型的webservice接口,其中的webservice服务,是返回数据库中的一个表值函数。该函数是可根据数据选择的结果自动生成的。

步骤s2:基于所述webservice接口调用数据库;其中webservice根据提交上来的sql命令调用数据库。

步骤s3:建立与所述webservice接口匹配的数据库调用接口,其中具体包括步骤s3a:基于javascript封装一套ajax的调用接口;步骤s3b:基于所述ajax的调用接口与所述webservice进行匹配,其中javascript中sql语言通过<sql></sql>标记来表示,在服务器端读取文件 时对<sql></sql>标记的内容做加密替换,具体为在javascript中sql语言用特殊标记如<sql></sql>表示,在服务器端读取文件的时候可以对<sql></sql>标记的内容做加密替换,这样在浏览器端就不能直接看到sql的源代码,保证数据库的安全性。

步骤s4:基于所述数据库调用接口获取信息,实现webservice服务,具体为用户在管理网页上,从通过的数据库数据共享的各个表中,选择自己需要的内容,保存确定后,数据库自动生成其对应的函数。同时,自动生成webservice服务,通过授权确定,即管理方授权验证码后,用户即可使用该webservice服务获取信息,实现共享,再具体包括步骤s4a:当webservice接收到命令的时候,判断是get还是post,如果是get命令就读取http请求中的文件名,然后读取该文件返回给请求方;步骤s4b:如果命令是post,则根据http请求中的文件名做判断,如果是/upload则表示上传文件操作,此时将上传的文件从http请求中分离出来并保存到目录下;步骤s4c:如果是/dbif则说明是数据库调用,发送来的http请求是xml封装的sql语句。

在本发明中,步骤s4c还包括,当接收到validaccount命令,post过来的xml中需要包含用户名和密码信息,在webservice验证是否合法,并将结果封装成xml返回请求方;当接收到logoff命令,webservice清除保存在session中的账号登录状态,如果用户访问页面会自动跳转到登录页面;当受到execsql命令后,post过来的xml中包含sql语句,execsql的sql语句,则执行结果封装成xml返回请求方;当受到querysql命令后,post过来的xml中包含sql语句,querysql的sql语句,执行结果封装成xml返回请求方。

在本发明中,当受到execsql命令后,post过来的xml中包含sql语句,execsql的sql语句必须是update/delete/insert这3种,执行结果封装成xml返回请求方;当受到querysql命令后,post过来的xml中包含sql语句,querysql的sql语句必须是select,执行结果封装成xml返回 请求方,在请求方得到返回的xml后,解析内容做出相应处理。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本领域技术的技术人员在本发明公开的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1