一种提供资源的方法和设备
技术领域
本申请涉及网络数据处理技术,特别涉及一种提供资源的方法和设备。
背景技术
为了便于随时随地对自己的资源进行取用,许多用户会预先将自己的资源交由资源提供方存放。资源提供方提供了广泛分布的大量资源客户端,用户可以通过任意一个资源客户端与资源提供方的服务器进行交互来获取其预先存放在资源提供方的资源。具体地,当某一用户需要向存放有其资源的资源提供方请求提供资源时,该用户可以选取该资源提供方的任意一个资源客户端,该资源客户端可以根据用户的操作向该资源提供方的服务器发送资源请求,该服务器可以基于该资源请求从其该用户存放的资源中扣除其所请求的资源,并向该资源客户端发送资源请求确认信息,以便该用户通过该资源客户端获得其所请求的资源。
本申请的发明人经过研究发现,对于同一资源,往往存在多个不同的资源提供方可以存放,而用户通常不会在每个资源提供方都存放资源,并且,对于用户存放了资源的资源提供方来说,其即使提供了广泛分布的大量资源客户端,也难以保证用户方便地在任意地点找到其提供的资源客户端,因此,现实中时常发生这样一种情况:在用户需要获取资源时,用户当前便于使用的资源客户端往往不属于存放有其资源的资源提供方,而对于存放有其资源的资源提供方所提供的资源客户端,用户当前又不便于使用。在这种情况下下,由于现有技术中资源提供方是通过其自身提供的资源客户端向用户提供资源的,资源提供方无法通过其自身外的其他资源提供方所提供的资源客户端向用户提供资源,因此,对于用户没有存放资源的资源提供方,该用户就无法通过其提供的资源客户端来获取其他资源提供方为该用户存放的资源,这就使得用户往往无法通过当前便于使用的资源客户端来获取资源,从而造成用户获取资源的不便。
发明内容
本申请实施例所要解决的技术问题是,提供一种提供资源的方法和设备,以使得资源提供方可以通过其自身外的其他资源提供方所提供的资源客户端向用户提供资源,从而使得用户可以通过其没有存放资源的资源提供方所提供的资源客户端来获取其他资源提供方为该用户存放的资源,以便用户可以更容易地、更方便地获取资源。
为解决上述技术问题,本申请实施例提供了一种提供资源的方法。该方法应用于第一服务器,包括:
接收基于用户身份信息而生成的校验码请求,为所述用户身份信息生成并记录第一校验码,并将所述第一校验码发送给所述用户身份信息对应的通讯客户端,以便所述通讯客户端呈现所述第一校验码;
接收资源客户端基于所述用户身份信息而生成并经第二服务器发送的资源请求,验证所述资源请求中的第二校验码与所述第一校验码是否相同,如果是,从所述用户身份信息对应的资源中扣除所述资源请求的资源,并经所述第二服务器向所述资源客户端发送资源请求确认信息,以允许通过所述资源客户端提供所述资源请求的资源;
其中,所述第一服务器与所述资源客户端属于不同的资源提供方,所述资源客户端与所述第二服务器属于同一资源提供方,所述扣除的资源用于所述第一服务器的资源提供方向所述第二服务器的资源提供方提供。
可选的,所述校验码请求具体是由所述资源客户端基于用户身份信息而生成并经所述第二服务器发送给所述第一服务器的。
可选的,所述校验码请求具体是由所述通讯客户端基于用户身份信息而生成并发送给所述第一服务器的。
可选的,所述资源请求具体是所述第二服务器响应于所述资源请求的资源未超过第一限制条件而发送给所述第一服务器的。
可选的,所述方法还包括:
响应于所述第二校验码与所述第一校验码相同,判断所述资源请求的资源是否未超过第二限制条件,如果是,进入执行所述从所述用户身份信息对应的资源中扣除所述资源请求的资源。
可选的,所述方法还包括:
响应于为所述用户身份信息记录所述第一校验码的时间达到校验码有效时间,为所述用户身份信息删除所述第一校验码。
此外,本申请实施例还提供了一种提供资源的设备。该设备配置于第一服务器,包括:
校验码请求接收模块,用于接收基于用户身份信息而生成的校验码请求;
校验码生成模块,用于为所述用户身份信息生成并记录第一校验码;
校验码发送模块,用于将所述第一校验码发送给所述用户身份信息对应的通讯客户端,以便所述通讯客户端呈现所述第一校验码;
资源请求接收模块,用于接收资源客户端基于所述用户身份信息而生成并经第二服务器发送的资源请求;
校验码验证模块,用于验证所述资源请求中的第二校验码与所述第一校验码是否相同;
资源扣除模块,用于在所述校验码验证模块的验证结果为是的情况下,从所述用户身份信息对应的资源中扣除所述资源请求的资源;
确认信息发送模块,用于经所述第二服务器向所述资源客户端发送资源请求确认信息,以允许通过所述资源客户端提供所述资源请求的资源;
其中,所述第一服务器与所述资源客户端属于不同的资源提供方,所述资源客户端与所述第二服务器属于同一资源提供方,所述扣除的资源用于所述第一服务器的资源提供方向所述第二服务器的资源提供方提供。
可选的,所述校验码请求具体是由所述资源客户端基于用户身份信息而生成并经所述第二服务器发送给所述第一服务器的。
可选的,所述校验码请求具体是由所述通讯客户端基于用户身份信息而生成并发送给所述第一服务器的。
可选的,所述资源请求具体是所述第二服务器响应于所述资源请求的资源未超过第一限制条件而发送给所述第一服务器的。
可选的,还包括:
资源判断模块,用于响应于所述第二校验码与所述第一校验码相同,判断所述资源请求的资源是否未超过第二限制条件;
触发扣除模块,用于在所述资源判断模块的判断结果为是的情况下,触发执行所述资源扣除模块。
可选的,还包括:
校验码删除模块,用于响应于为所述用户身份信息记录所述第一校验码的时间达到校验码有效时间,为所述用户身份信息删除所述第一校验码。
与现有技术相比,本申请具有以下优点:
根据本申请实施例的技术方案,当用户需要通过资源客户端从第一服务器所属的资源提供方获取资源时,如果该资源客户端与第一服务器属于不同的资源提供方而是与第二服务器属于同一资源提供方,用户可以向第一服务器请求校验码,第一服务器在接收到基于该用户身份信息而生成的校验码请求时,可以为该用户身份信息生成并记录第一校验码,并将所述第一校验码发送给所述用户身份信息对应的通讯客户端,然后,根据通讯客户端上呈现的第一校验码,用户可以通过资源客户端向第一服务器请求资源,第一服务器在接收到资源客户端基于所述用户身份信息而生成并经第二服务器发送的资源请求时,可以验证所述资源请求中的第二校验码与所述第一校验码是否相同,如果是,则可以从所述用户身份信息对应的资源中扣除所述资源请求的资源,并经所述第二服务器向所述资源客户端发送资源请求确认信息,以允许通过所述资源客户端提供所述资源请求的资源。因此,由于资源提供方可以通过其自身之外的其他资源提供方所提供的资源客户端向用户提供资源,使得用户可以通过其没有存放资源的资源提供方所提供的资源客户端来获取其他资源提供方为该用户存放的资源,因此,当用户需要获取资源时,即使当前便于使用的资源客户端都不属于为其存放资源的资源提供方,用户也可以通过当前便于使用的资源客户端来获取资源,从而实现用户更容易地、更方便地获取资源。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中一个示例性应用场景的框架示意图;
图2为本申请中提供资源的方法实施例1的流程图;
图3为本申请中提供资源的方法实施例2的流程图;
图4为本申请中提供资源的设备实施例1的结构图;
图5为本申请中提供资源的设备实施例2的结构图;
图6为本申请中提供资源的设备实施例3的结构图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本申请的发明人经过研究发现,现有技术中,之所以难以实现资源提供方通过其自身之外的资源提供方所提供的资源客户端向用户提供资源,之所以难以实现用户跨资源提供方来获取资源,原因在于,现有技术中资源提供方对资源请求的验证方式使得用户在其存放资源的资源提供方上的用户身份安全难以保证。具体地说,现有技术中,用户通过资源客户端向资源提供方的服务器发送资源请求时,服务器需要对资源客户端的资源请求进行验证,验证通过之后服务器才会执行该资源请求的动作,并允许资源客户端向用户提供资源,其中,验证的方式是验证用户此时提供的用户身份信息与用户安全信息(如个人密码等)之间是否具有服务器中已记录的对应关系,这就要求资源请求中携带有用户提供的用户身份信息与安全信息。但是,具体到资源提供方通过其自身之外的资源提供方所提供的资源客户端向用户提供资源,假设第一资源提供方通过第二资源提供方所提供的资源客户端,第一资源提供方使用第一服务器,第二资源提供方使用第二服务器,则该资源客户端发出的资源请求就需要经过第二服务器转发到第一服务器,此时,如果验证的方式还是要求资源请求中携带用户身份信息和用户安全信息,第二资源提供方就可以通过第二服务器获取该用户身份信息和用户安全信息,这样就会导致用户在第一资源提供方上的用户身份完全暴露在第二资源提供方下,从而使得用户在第一资源提供方上的用户身份安全难以保证。由此可见,如果要实现资源提供方通过其自身之外的资源提供方所提供的资源客户端向用户提供资源,为了保证用户身份的安全,就需要改进现有技术中对资源请求的验证方式,以避免用户身份信息和用户安全信息都携带在由资源客户端生成的资源请求中。
基于上述考虑,本申请的主要思想之一可以包括:为了避免用户身份信息和用户安全信息都携带在由资源客户端生成的资源请求中,当用户需要通过资源客户端从第一服务器所属的资源提供方获取资源时,如果该资源客户端与第一服务器属于不同的资源提供方而是与第二服务器属于同一资源提供方,第一服务器可以为用户身份信息生成并记录一个校验码并发送给用户的通讯客户端,而用户可以在资源客户端上提供用户身份信息和校验码以生成资源请求并经第二服务器发送给第一服务器,第一服务器则可以基于用户身份信息与校验码之间的对应关系来验证资源请求,这样不仅使得资源提供方可以通过其自身之外的其他资源提供方所提供的资源客户端向用户提供资源,从而实现用户更容易地、更方便地获取资源,而且由于校验码替代了用户安全信息,也使得用户在资源提供方上的用户身份信息与用户安全信息不会被其他资源提供方同时获得,从而保证用户身份的安全。
基于上述主要思想,本申请实施例的应用场景之一,可以通过资源客户端、第一服务器、第二服务器与通讯客户端之间的交互来实现。如图1所示,在这一应用场景中,用户可以通过资源客户端101经第二服务器102与第一服务器103进行交互,用户还可以通过通讯客户端104与第一服务器103进行交互。具体地,第一服务器103可以接收基于用户身份信息而生成的校验码请求,为所述用户身份信息生成并记录第一校验码,并将所述第一校验码发送给所述用户身份信息对应的通讯客户端104,以便所述通讯客户端104呈现所述第一校验码;然后,第一服务器103可以接收资源客户端101基于所述用户身份信息而生成并经第二服务器102发送的资源请求,验证所述资源请求中的第二校验码与所述第一校验码是否相同,如果是,从所述用户身份信息对应的资源中扣除所述资源请求的资源,并经所述第二服务器102向所述资源客户端101发送资源请求确认信息,以允许通过所述资源客户端101提供所述资源请求的资源。其中,所述第一服务器103与所述资源客户端101属于不同的资源提供方,所述资源客户端101与所述第二服务器102属于同一资源提供方,所述扣除的资源用于所述第一服务器103的资源提供方向所述第二服务器102的资源提供方提供。
需要说明的是,在上述应用场景中,术语“资源客户端”表示的是资源提供方为向用户提供资源而提供给用户使用的客户端,其通常仅属于特定的资源提供方,仅能与其所属资源提供方的服务器进行交互;术语“通讯客户端”表示的是用户个人使用的客户端,其通常仅属于特定的用户,可以为特定的用户实现与各种服务器进行交互,也可以为特定的用户实现与某特定服务器进行交互。还需要注意的是,上述应用场景仅是为了便于理解本申请的精神和原理而示出,本申请的实施方式在此方面不受任何限制。相反,本申请的实施方式可以应用于适用的任何场景。
在介绍了本申请的主要思想以后,下面结合附图,详细说明本申请的各种非限制性实施方式。
参见图2,示出了本申请中提供资源的方法实施例1的流程图。在本实施例中,所要实现的是第一服务器所属的资源提供方通过资源客户端向用户提供资源,其中,该资源客户端与该第一服务器属于不同的资源提供方而是与第二服务器属于同一资源提供方。本实施例可以应用于该第一服务器,例如具体可以包括如下步骤:
S201、接收基于用户身份信息而生成的校验码请求,为所述用户身份信息生成并记录第一校验码,并将所述第一校验码发送给所述用户身份信息对应的通讯客户端,以便所述通讯客户端呈现所述第一校验码。
假设第一服务器属于第一资源提供方,第二服务器和资源客户端属于第二资源提供方,当用户需要通过资源客户端获取其在第一资源提供方上存放的资源,需要先向第一服务器请求校验码,以便在资源客户端上请求资源时代替用户安全信息使用。具体地,用户可以向第一服务器发送携带有用户身份信息的校验码请求,第一服务器可以基于该校验码请求为该用户身份信息生成并记录第一校验码,然后查找该用户身份信息对应的通讯客户端,再将第一校验码发送给该用户身份信息对应的通讯客户端,通讯客户端可以将接收的第一校验码呈现给用户,以便用户获得第一校验码来请求资源。其中,用户身份信息表示的是用户在第一服务器上的用户身份;用户身份信息对应的通讯客户端,可以是第一服务器预先为该用户身份信息记录的通讯客户端。
例如,本实施例可以应用到用户取现的场景实例中。在这一场景实例中,用户请求的资源可以为其存放在银行、第三方支付机构(如支付宝等机构)的现金,第一服务器例如可以是支付宝的服务器,第二服务器例如可以是某一银行的服务器,资源客户端例如可以是该银行提供的ATM等交易客户端。此时,用户向支付宝的服务器发送请求校验码所采用的用户身份信息,例如可以是该用户在支付宝上的账号、该用户的身份证完整号码或者身份证部分号码等;用户向服务器发送的校验码请求,例如可以是通过交易客户端发送的,或者,又如可以是通过通讯客户端发送的;用户身份信息对应的通讯客户端,例如可以是在支付宝上与用户身份信息对应记录的手机号码所表示的移动终端,或者,又如可以是在支付宝上与用户身份信息对应的支付宝客户端软件。
可以理解的是,在本实施例中,校验码请求可以是通过不同的途径发送到第一服务器的,也即用户可以通过不同的途径触发校验码请求。
在本实施例的一些实施方式中,所述校验码请求具体可以是由所述资源客户端基于用户身份信息而生成并经所述第二服务器发送给所述第一服务器的,即用户可以通过资源客户端经第二服务器向第一服务器发送校验码请求。具体实现时,用户可以在资源客户端上输入其在第二服务器上的用户身份信息,资源客户端则基于用户身份信息生成校验码请求,并将校验码请求发送给第二服务器,第二服务器再将该校验码请求发送给第一服务器。例如,结合前述用户取现的场景实例,用户可以通过交易客户端经银行的服务器向支付宝的服务器发送校验码请求,具体地说,用户可以在ATM等交易客户端上输入自己在支付宝上的用户身份信息,交易客户端基于用户身份信息生成校验码请求发送给银行的服务器,银行的服务器再将校验码请求转发至支付宝的服务器。可以理解的是,通过资源客户端发送校验码请求,使得用户可以在获取资源的当时来获取校验码,而无需在获取资源之前去请求校验码,从而使得用户更加灵活地获取资源。
进一步而言,当用户通过资源客户端经第二服务器向第一服务器发送校验码请求时,第二服务器在接收到校验码请求时可以对校验码请求中携带的用户身份信息等信息进行格式校验,并在格式校验通过时转发校验码请求至第一服务器,而在格式校验不通过时可以通过资源客户端向用户提示,以使得用户对输入信息进行修改。
在本实施例的另一些实施方式中,所述校验码请求具体可以是由所述通讯客户端基于用户身份信息而生成并发送给所述第一服务器的,也即用户可以通过其通讯客户端向第一服务器发送校验码请求。具体实现时,用户可以在其通讯客户端上触发请求校验码的操作,其通讯客户端可以基于用户输入的用户身份信息或其自身保存的用户身份信息生成校验码请求,并将校验码请求发送给第一服务器。例如,结合前述用户取现的场景实例,用户可以通过其通讯客户端向支付宝的服务器发送校验码请求,具体地说,用户可以在其手机、PC等通讯客户端上触发向支付宝请求校验码的操作,通讯客户端则基于用户输入或自身保存的用户身份信息生成校验码请求发送给第一服务器。
进一步而言,用于为用户发送校验码请求的通讯客户端与用于为用户呈现校验码的通讯客户端,两者可以是同一客户端,例如,对前述用户取现的场景实例来说,用户可以通过支付宝的手机客户端向支付宝的服务器发送校验码请求,而支付宝的服务器可以将校验码发送到该手机客户端上呈现;或者,两者也可以是不同的客户端,例如,对前述用户取现的场景实例来说,用户可以通过PC向支付宝的服务器发送校验码请求,而支付宝的服务器可以将校验码通过短信发送到用户的手机上呈现。
需要说明的是,为了避免恶意请求校验码,在本实施例的又一些实施方式中,可以在向用户提供校验码时对用户身份进行验证,例如,可以要求用户在请求校验码时同时提供其用户身份信息和手机号,以便校验码请求中携带用户提供的用户身份信息和手机号,第一服务器在接收到校验码请求时则可以先验证校验码请求中的用户身份信息与手机号是否具有预先记录的对应关系,如果是再向用户信息对应的通讯客户端发送第一校验码。
此外,为了保证校验码的安全,在本实施例的再一些实施方式中,第一服务器还可以响应于为所述用户身份信息记录所述第一校验码的时间达到校验码有效时间,为所述用户身份信息删除所述第一校验码,这样就使得用户请求了第一校验码之后需要在校验码有效时间之内使用才能完成获取资源,否则,如果用户在校验码有效时间之后才使用该第一校验码,由于第一服务器已删除该第一校验码,用户就将无法获取资源。
S202、接收资源客户端基于所述用户身份信息而生成并经第二服务器发送的资源请求,验证所述资源请求中的第二校验码与所述第一校验码是否相同,如果是,从所述用户身份信息对应的资源中扣除所述资源请求的资源,并经所述第二服务器向所述资源客户端发送资源请求确认信息,以允许通过所述资源客户端提供所述资源请求的资源。
其中,所述第一服务器与所述资源客户端属于不同的资源提供方,所述资源客户端与所述第二服务器属于同一资源提供方,所述扣除的资源用于所述第一服务器的资源提供方向所述第二服务器的资源提供方提供。
具体实现时,用户可以按照通讯客户端上呈现的第一校验码,在资源客户端上输入第二校验码,资源客户端可以基于其用户身份信息和第二校验码生成资源请求并发送给第二服务器,第二服务器再将该资源请求发送给第一服务器。当第一服务器接收到资源请求时,可以依据资源请求中的用户身份信息查找到预先记录的第一校验码,然后判断资源请求中的第二校验码与第一校验码是否相同,如果相同再从用户身份信息对应的资源中扣除该资源请求的资源,并经第二服务器向资源客户端发送资源请求确认信息。可以理解的是,用户在资源客户端上是按照第一校验码输入第二校验码的,通常情况下第一校验码与第二校验码应是相同的,这样才可以使得第一服务器完成其资源请求,而如果第一校验码与第二校验码不相同,则第一服务器将拒绝该资源请求,不会扣除资源,也不会向资源客户端发送资源请求确认信息,用户也就不会通过资源客户端获得资源。
例如,结合前述用户取现的场景实例,用户可以按照其通讯客户端上的第一校验码而在ATM等交易客户端上输入第二校验码,交易客户端可以基于其用户身份信息和第二校验码生成取现请求并发送给银行的服务器,银行的服务器再将该取现请求发送给支付宝的服务器。当支付宝的服务器接收到取现请求时,可以依据取现请求中的用户身份信息查找到预先记录的第一校验码,然后判断取现请求中的第二校验码与第一校验码是否相同,如果是再从该用户身份信息对应的账户中扣除该取现请求的金额,并经银行的服务器向交易客户端发送取现请求确认信息,以便用户通过交易客户端获得现金。其中,支付宝的服务器从用户账户中扣除的金额,用于支付宝提供给为用户提供取现服务的银行。可以理解的是,支付宝的服务器可以从该用户在支付宝上的账户扣除金额,或者也可以从该用户在除交易客户端所属银行之外的其他银行上的账户扣除金额;支付宝在将扣除的金额提供给银行时,可以是在每次扣除时提供,或者也可以是在累计到一定时间或一定额度时再提供。
可以理解的是,当用户通过资源客户端经第二服务器向第一服务器发送资源请求时,第二服务器在接收到资源请求时可以对资源请求中携带的校验码等信息进行格式校验,并在格式校验通过时转发资源请求至第一服务器,而在格式校验不通过时可以通过资源客户端向用户提示,以使得用户对输入信息进行修改。
需要说明的是,在本实施例的一些实施方式中,为了便于用户依据其存放资源的情况来确定请求多少资源,用户在通过资源客户端发送资源请求时可以不提供资源量,而第一服务器在确定资源请求中的第二校验码与第一校验码相同之后,可以将用户身份信息对应的资源情况信息经第二服务器发送给资源客户端,以便资源客户端呈现资源情况信息,然后,用户再在资源客户端上输入需要请求获取的资源量,资源客户端将资源量经第二服务器发送至第一服务器,第一服务器再按照该资源量扣除资源并指示资源客户端提供资源。例如,结合前述用户取现的场景实例,用户可以先在交易客户端上输入第二校验码,支付宝的服务器在验证第二校验码与第一校验码相同之后,将用户的账户信息返回至交易客户端上呈现给用户,然后用户再在交易客户端上输入需要提取的现金额度,支付宝的服务器再按照交易客户端发送来的现金额度来进行扣款和放款。此外,在本实施例的另一些实施方式中,用户也可以不必输入需要请求的资源量,第一服务器在验证校验码通过之后,可以按照用户预先设置的固定资源量来扣除资源并通过资源客户端向用户提供。
可以理解的是,在本实施例的又一些实施方式中,第二服务器所属的资源提供方可以对用户请求的资源设置限制条件,此时,所述资源请求具体可以是所述第二服务器响应于所述资源请求的资源未超过第一限制条件而发送给所述第一服务器的。其中,第一限制条件可以是对所述资源请求的资源量进行限制,例如可以是用户每次资源请求的最大资源量,又如可以是同一用户一段时间内请求的最大总资源量。结合前述用户取现的场景实例,银行的服务器可以判断用户请求提取的金额是否符合该银行对取现额度的限制条件,如果符合再将取现请求发送至支付宝的服务器。或者,第一限制条件也可以是资源客户端剩余的资源量。结合前述用户取现的场景实例,银行服务器可以判断用户请求提取的金额是否未超过交易客户端剩余的现钞总额,如果是再将取现请求发送至支付宝的客户端。
需要说明的是,在本实施例的再一些实施方式中,第一服务器所属的资源提供方可以对用户请求的资源设置限制条件,例如,第一服务器还可以响应于所述第二校验码与所述第一校验码相同,判断所述资源请求的资源是否未超过第二限制条件,如果是,进入执行所述从所述用户身份信息对应的资源中扣除所述资源请求的资源。其中,第二限制条件可以是对所述资源请求的资源量进行限制,例如可以是用户每次资源请求的最大资源量,又如可以是同一用户一段时间内请求的最大总资源量。结合前述用户取现的场景实例,支付宝的服务器可以判断用户请求提取的金额是否符合支付宝对取现额度的限制条件,如果符合再进行扣款和放款。
通过本实施例的技术方案,不仅使得资源提供方可以通过其自身之外的其他资源提供方所提供的资源客户端向用户提供资源,从而实现用户更容易地、更方便地获取资源,而且由于校验码替代了用户安全信息,也避免了用户身份信息和用户安全信息都携带在由资源客户端生成的资源请求中,使得用户在资源提供方上的用户身份信息与用户安全信息不会被其他资源提供方同时获得,从而保证用户身份的安全。
为了使本领域技术人员更加理解本申请用于提供资源的方法在实际应用中的实施方式,下面从设备交互的角度,以一个具体实例场景来介绍不申请用于提供资源的方法的实施方式。在该具体实例场景中,支付宝通过银行的交易客户端向用户提供取现业务,第一服务器为支付宝服务器,第二服务器为银行服务器,资源客户端为银行提供的用户自助的交易客户端。
参见图3,示出了本申请中提供资源的方法实施例2的流程图。在本实施例中,例如可以包括如下步骤:
S301、交易客户端依据用户输入的用户身份信息和手机号生成校验码请求。
其中,该用户身份信息可以为用户身份证号的后六位。
S302、交易客户端向银行服务器发送校验码请求。
S303、银行服务器对该用户身份信息和该手机号进行格式校验。
如果格式校验通过,可以进入执行S304;如果格式校验不通过,则可以通过交易客户端向用户呈现输入信息格式有误的提示,以便用户修改。
S304、银行服务器向支付宝服务器发送校验码请求。
S305、支付宝服务器验证该用户身份信息与该手机号是否具有预先记录的对应关系;如果不具有,进入S306;如果具有,进入S307。
S306、支付宝服务器通过银行服务器向交易客户端返回验证失败信息。
此时,交易客户端可以向用户提示其输入的用户身份信息与手机号验证失败,以便用户可以重新输入。
S307、支付宝服务器为该用户身份信息生成并记录第一校验码。
S308、支付宝服务器将该第一校验码发送给该手机号对应的通讯客户端呈现。
S309、资源客户端依据用户输入的第二校验码生成取现请求。
S310、资源客户端向银行服务器发送取现请求。
S311、银行服务器对该第二校验码进行格式校验。
如果格式校验通过,可以进入执行S312;如果格式校验不通过,则可以通过交易客户端向用户呈现输入信息格式有误的提示,以便用户修改。
S312、银行服务器向支付宝服务器发送取现请求。
S313、支付宝服务器验证该第二校验码与该第一校验码是否相同;如果不相同,进入S314;如果相同,进入S315。
S314、支付宝服务器通过银行服务器向交易客户端发送验证失败信息。
此时,交易客户端可以向用户提示其输入的第二校验码验证失败,以便用户可以重新输入。
S315、支付宝服务器将该用户身份信息对应的账户信息通过银行服务器发送给交易客户端。
S316、交易客户端呈现接收到的账户信息。
S317、交易客户端将用户输入的取现金额发送至银行服务器。
S318、银行服务器对取现金额进行第一限制条件的检查。
如果取现金额未超过第一限制条件,可以进入执行S319;如果取现金额超过第一限制条件,可以通过交易客户端向用户呈现提示,以便用户修改取现金额。
其中,第一限制条件例如可以包括交易客户端的剩余现钞总额、该银行对取现的单笔限额、该银行对取现的日限额等。
S319、银行服务器将取现金额发送至支付宝服务器。
S320、支付宝服务器对取现金额进行第二限制条件的检查。
如果取现金额未超过第二限制条件,可以进入执行S321;如果取现金额超过第二限制条件,可以通过交易客户端向用户呈现提示,以便用户修改取现金额。
其中,第二限制条件例如可以包括支付宝对取现的单笔限额、支付宝对取现的日限额等。
S321、支付宝服务器从用户账户中扣款。
其中,支付宝服务器的扣款渠道可以是从该用户在支付宝上的账户中扣除,或者也可以是从该用户在其他银行的账户中扣除。
S322、支付宝服务器通过银行服务器向交易客户端发送取现确认信息,以便交易客户端向用户提供现金。
通过本实施例的技术方案,一方面使得支付宝可以通过银行的交易客户端向用户提供资源,为用户实现了跨行取现,从而使得用户可以更容易地、更方便地取现,另一方面用户在取现时无需使用银行卡,并且也无需通过银行系统提前预约,仅需在交易客户端上触发校验码请求和取现请求即可,从而使得用户可以更加灵活地取现。
在介绍了本申请中示例性的方法之后,接下来对本申请示例性实施方式的、用于提供资源的设备进行介绍。
参见图4,示出了本申请中提供资源的设备实施例1的结构图。本实施例的设备可以配置于第一服务器,例如具体可以包括:
校验码请求接收模块401,用于接收基于用户身份信息而生成的校验码请求;
校验码生成模块402,用于为所述用户身份信息生成并记录第一校验码;
校验码发送模块403,用于将所述第一校验码发送给所述用户身份信息对应的通讯客户端,以便所述通讯客户端呈现所述第一校验码;
资源请求接收模块404,用于接收资源客户端基于所述用户身份信息而生成并经第二服务器发送的资源请求;
校验码验证模块405,用于验证所述资源请求中的第二校验码与所述第一校验码是否相同;
资源扣除模块406,用于在所述校验码验证模块405的验证结果为是的情况下,从所述用户身份信息对应的资源中扣除所述资源请求的资源;
确认信息发送模块407,用于经所述第二服务器向所述资源客户端发送资源请求确认信息,以允许通过所述资源客户端提供所述资源请求的资源;
其中,所述第一服务器与所述资源客户端属于不同的资源提供方,所述资源客户端与所述第二服务器属于同一资源提供方,所述扣除的资源用于所述第一服务器的资源提供方向所述第二服务器的资源提供方提供。
在本实施例的一些实施方式中,所述校验码请求例如具体可以是由所述资源客户端基于用户身份信息而生成并经所述第二服务器发送给所述第一服务器的。
在本实施例的另一些实施方式中,所述校验码请求例如具体可以是由所述通讯客户端基于用户身份信息而生成并发送给所述第一服务器的。
在本实施例的又一些实施方式中,所述资源请求例如具体可以是所述第二服务器响应于所述资源请求的资源未超过第一限制条件而发送给所述第一服务器的。
参见图5,示出了本申请中提供资源的设备实施例2的结构图。在本实施例中,除了图4所示的所有结构之外,所述设备例如还可以包括:
资源判断模块501,用于响应于所述第二校验码与所述第一校验码相同,判断所述资源请求的资源是否未超过第二限制条件;
触发扣除模块502,用于在所述资源判断模块的判断结果为是的情况下,触发执行所述资源扣除模块406。
参见图6,示出了本申请中提供资源的设备实施例3的结构图。在本实施例中,除了图4所示的所有结构之外,所述设备例如还可以包括:
校验码删除模块601,用于响应于为所述用户身份信息记录所述第一校验码的时间达到校验码有效时间,为所述用户身份信息删除所述第一校验码。
通过本申请设备实施例的技术方案,不仅使得资源提供方可以通过其自身之外的其他资源提供方所提供的资源客户端向用户提供资源,从而实现用户更容易地、更方便地获取资源,而且由于校验码替代了用户安全信息,也避免了用户身份信息和用户安全信息都携带在由资源客户端生成的资源请求中,使得用户在资源提供方上的用户身份信息与用户安全信息不会被其他资源提供方同时获得,从而保证用户身份的安全。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对于设备实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的设备实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本申请的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。