一种服务获取调用方法、装置以及客户端和服务器的制造方法

文档序号:8433897阅读:163来源:国知局
一种服务获取调用方法、装置以及客户端和服务器的制造方法
【技术领域】
[0001]本发明涉及网络通信领域,具体涉及一种服务获取调用方法、装置以及客户端和服务器。
【背景技术】
[0002]现有的服务调用中,程序可直接调用WEB服务,或者通过框架调用WEB服务。如.net中采用添加WEB引用的方式直接从程序中调用服务,JAVA程序中使用axis2框架调用服务。
[0003]现有技术的不足之处在于:现有服务的直接调用方式和通过框架的调用方式都不会对调用者进行身份识别,使一些非法用户也可以对服务进行调用,不能确保合法的服务调用者的利益。

【发明内容】

[0004]为克服上述缺陷,本发明提供一种服务获取调用方法、装置以及客户端和服务器。
[0005]第一方面,本发明实施例提供一种服务调用方法,用于服务器,所述方法包括如下步骤:
[0006]获取客户端发送的具有客户端数据的服务调用信息;
[0007]根据获取的所述客户端数据生成服务访问令牌;
[0008]将生成的所述服务访问令牌返回给所述客户端;
[0009]接收包括所述服务访问令牌的服务请求信息;
[0010]根据所述服务请求信息中的所述服务访问令牌,判断所述客户端能否调用服务,得到一判断结果;
[0011]当判断结果指示所述客户端能调用服务时,向所述客户端返回的调用服务指令。
[0012]优选地,所述根据所述服务访问令牌,判断所述客户端能否调用服务,得到一判断结果具体包括:
[0013]根据接收到的包括所述服务访问令牌的服务请求信息,发送具有所述服务访问令牌的请求验证信息;
[0014]根据所述请求验证信息对所述客户端进行身份验证;
[0015]当验证通过时,判断所述客户端所调用的服务是否为所述客户端预先订阅的服务,得到一判断结果。
[0016]优选地,在所述接收包括所述服务访问令牌的服务请求信息中:
[0017]所述服务请求信息的发送方包括:所述客户端或者所述客户端所调用的服务。
[0018]优选地,当所述服务请求信息的发送方为客户端时,所述服务器通过企业服务总线接收所述服务请求信息,并向所述客户端返回调用服务指令。
[0019]第二方面,本发明实施例提供一种服务获取方法,用于客户端,所述方法包括如下步骤:
[0020]向服务器发送具有客户端数据的服务调用信息;
[0021]接收所述服务器返回的服务访问令牌;
[0022]发送包括所述服务访问令牌的服务请求信息,使所述服务器根据所述服务访问令牌对所述客户端能否调用服务进行判断;
[0023]接收所述服务器返回的调用服务指令。
[0024]优选地,在所述发送包括所述服务访问令牌的服务请求信息中:
[0025]所述服务请求信息的接收方包括:所述服务器或者所述客户端所调用的服务。
[0026]优选地,当所述服务请求信息的接收方为所述服务器时,所述客户端通过企业服务总线发送所述服务请求信息,并接收所述客户端返回的调用服务指令。
[0027]第三方面,本发明实施例提供一种服务调用装置,用于服务器,所述装置包括:
[0028]获取模块,用于获取客户端发送的具有客户端数据的服务调用信息;
[0029]处理模块,用于根据获取的所述客户端数据生成服务访问令牌;
[0030]第一返回模块,用于将生成的所述服务访问令牌返回给所述客户端;
[0031]第一接收模块,用于接收包括所述服务访问令牌的服务请求信息;
[0032]判断模块,用于根据所述服务请求信息中的所述服务访问令牌,判断所述客户端能否调用服务,得到一判断结果;
[0033]第二返回模块,用于当判断结果指示所述客户端能调用服务时,向所述客户端返回的调用服务指令。
[0034]优选地,所述判断模块具体用于:
[0035]根据接收到的包括所述服务访问令牌的服务请求信息,发送具有所述服务访问令牌的请求验证信息;
[0036]根据所述请求验证信息对所述客户端进行身份验证;
[0037]当验证通过时,判断所述客户端所调用的服务是否为所述客户端预先订阅的服务,得到一判断结果。
[0038]优选地,在所述第一接收模块中:
[0039]所述服务请求信息的发送方包括:所述客户端或者所述客户端所调用的服务。
[0040]优选地,当所述服务请求信息的发送方为客户端时,所述服务器通过企业服务总线接收所述服务请求信息,并向所述客户端返回调用服务指令。
[0041]第四方面,本发明实施例提供一种服务获取装置,用于客户端,所述装置包括:
[0042]第一发送模块,用于向服务器发送具有客户端数据的服务调用信息;
[0043]第二接收模块,用于接收所述服务器返回的服务访问令牌;
[0044]第二发送模块,用于发送包括所述服务访问令牌的服务请求信息,使所述服务器根据所述服务访问令牌对所述客户端能否调用服务进行判断;
[0045]第三接收模块,用于接收所述服务器返回的调用服务指令。
[0046]优选地,在所述发送模块中:
[0047]所述服务请求信息的接收方包括:所述服务器或者所述客户端所调用的服务。
[0048]优选地,当所述服务请求信息的接收方为所述服务器时,所述客户端通过企业服务总线发送所述服务请求信息,并接收所述客户端返回的调用服务指令。
[0049]第五方面,本发明实施例提供一种服务器,所述服务器包括上述的服务调用装置。
[0050]第六方面,本发明实施例提供一种客户端,所述客户端包括上述的服务获取装置。
[0051]本发明实施例提供的服务获取调用方法、装置以及客户端和服务器,通过为客户端生成用于身份验证的服务访问令牌,使服务器通过服务访问令牌对客户端的合法性进行验证,服务器只有在客户端的服务访问令牌验证通过后,才会向客户端返回其请求的服务,避免了非法用户对服务的调用,确保了合法的服务调用者的利益。
【附图说明】
[0052]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0053]图1表示服务调用方法的实施例流程图。
[0054]图2表示服务调用方法的半代理模式流程图。
[0055]图3表示服务获取方法的实施例流程图。
[0056]图4表示全代理模式下应用对本地服务调用的流程图。
[0057]图5表示全代理模式下应用接入地与服务接入地同省的服务调用流程图。
[0058]图6表示全代理模式下应用接入地与服务接入地不同省的服务调用流程图。
[0059]图7表示半代理模式下应用对本地服务调用的流程图。
[0060]图8表示半代理模式下应用接入地与服务接入地同省的服务调用流程图。
[0061]图9表示半代理模式下应用接入地与服务接入地不同省的服务调用流程图。
[0062]图10表示服务调用装置的示意图。
[0063]图11表不服务获取装置的不意图。
【具体实施方式】
[0064]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0065]一种服务调用方法的流程如图1所示,所述方法用于服务器,所述方法包括如下步骤:
[0066]步骤100.获取客户端发送的具有客户端数据的服务调用信息;
[0067]步骤101.根据获取的所述客户端数据生成服务访问令牌;
[0068]步骤102.将生成的所述服务访问令牌返回给所述客户端;
[0069]步骤103.接收包括所述服务访问令牌的服务请求信息;
[0070]步骤104.根据所述服务请求信息中的所述服务访问令牌,判断所述客户端能否调用服务,得到一判断结果;
[0071]步骤105.当判断结果指示所述客户端能调用服务时,向所述客户端返回的调用服务指令。
[0072]其中,所述客户端数据可以是任何可以标识客户端的数据。
[0073]通过上述操作,通过为客户端生成用于身份验证的服务访问令牌,使服务器通过服务访问令牌对客户端的合法性进行验证,服务器只有在客户端合法的情况下,才会向客户端返回其请求的服务,避免了非法用户对服务的调用,确保了合法的服务调用者的利益。
[0074]本实施例提供的服务获取调用方法,可以应用于各种获取网络服务的场合。所述客户端包括但不限于:台式机和移动终端等。
[0075]具体地,所述根据所述服务访问令牌,判断所述客户端能否调用服务,得到一判断结果具体包括:
[0076]根据接收到的所述服务请求信息中包括的所述服务访问令牌,发送具有所述服务访问令牌的请求验证信息;
[0077]根据所述请求验证信息对所述客户端进行身份验证;
[0078]当验证通过时,判断所述客户端所调用的服务是否为所述客户端预先订阅的服务,得到一判断结果。
[0079]通过上述操作,在对所述客户端进行身份验证后,又对所述客户端与所调用的服务是否存在订阅关系进行判断,双重方式保证客户端服务调用的合法性,进一步避免了非法用户对服务的调用。
[0080]现有的获取网络服务的场合中,客户端一般是通过企业服务总线(ESB)的方式去调用服务,若在某一时间段内有多个客户端都通过ESB进行服务调用,那么会存在高并发量下,会导致ESB负载过大而导致性能降低的问题。
[0081]在本实施例中,通过所述服务请求信息的发送方的不同对客户端对服务的调用方式加以区别。
[0082]在所述接收包括所述服务访
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1