特許第5881687号(P5881687)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ アリババ・グループ・ホールディング・リミテッドの特許一覧

特許5881687オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置
<>
  • 特許5881687-オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置 図000002
  • 特許5881687-オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置 図000003
  • 特許5881687-オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置 図000004
  • 特許5881687-オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置 図000005
  • 特許5881687-オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置 図000006
  • 特許5881687-オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置 図000007
  • 特許5881687-オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置 図000008
  • 特許5881687-オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置 図000009
  • 特許5881687-オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置 図000010
  • 特許5881687-オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置 図000011
  • 特許5881687-オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置 図000012
  • 特許5881687-オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置 図000013
  • 特許5881687-オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置 図000014
  • 特許5881687-オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置 図000015
  • 特許5881687-オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置 図000016
  • 特許5881687-オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置 図000017
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5881687
(24)【登録日】2016年2月12日
(45)【発行日】2016年3月9日
(54)【発明の名称】オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置
(51)【国際特許分類】
   G06F 13/00 20060101AFI20160225BHJP
   G06F 9/50 20060101ALI20160225BHJP
【FI】
   G06F13/00 540A
   G06F9/46 465C
   G06F13/00 510A
【請求項の数】18
【全頁数】26
(21)【出願番号】特願2013-514186(P2013-514186)
(86)(22)【出願日】2011年5月17日
(65)【公表番号】特表2013-531295(P2013-531295A)
(43)【公表日】2013年8月1日
(86)【国際出願番号】US2011036813
(87)【国際公開番号】WO2011156090
(87)【国際公開日】20111215
【審査請求日】2014年4月23日
(31)【優先権主張番号】201010200821.1
(32)【優先日】2010年6月10日
(33)【優先権主張国】CN
(73)【特許権者】
【識別番号】510330264
【氏名又は名称】アリババ・グループ・ホールディング・リミテッド
【氏名又は名称原語表記】ALIBABA GROUP HOLDING LIMITED
(74)【代理人】
【識別番号】110001243
【氏名又は名称】特許業務法人 谷・阿部特許事務所
(72)【発明者】
【氏名】リン タオ
(72)【発明者】
【氏名】リン ジュンシュー
【審査官】 古河 雅輝
(56)【参考文献】
【文献】 国際公開第2003/052615(WO,A1)
【文献】 国際公開第2010/001871(WO,A1)
【文献】 特表2009−518724(JP,A)
【文献】 特開2003−256223(JP,A)
【文献】 特開2004−164313(JP,A)
【文献】 米国特許出願公開第2004/0133478(US,A1)
【文献】 特開2005−216303(JP,A)
【文献】 特開2008−210191(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/46
G06F 13/00
G06F 15/00
G06F 19/00−19/28
G06Q 10/00−90/00
(57)【特許請求の範囲】
【請求項1】
オープン・アプリケーション・プログラミング・インターフェース(API)に基づくネットワーク取引を実現する方法であって、
利用者の取引要求にしたがって、サード・パーティ開発サーバから、複数のオープンAPIを呼び出す第1呼び出し要求を受信するステップと、
前記複数のオープンAPI間の呼び出し関係を判定するステップと、
前記呼び出し関係にしたがって、呼び出し順序が前記複数のオープンAPIに存在する場合には、前記複数のオープンAPIの前記呼び出し順序の先頭にある第1オープンAPIに対応するインターネット・サービス・プロバイダー(ISP)サーバへ、前記第1呼び出し要求を送信するステップと、
前記第1呼び出し要求にしたがって前記ISPサーバにより戻されたサービス・ページを受信するステップと、
前記サービス・ページを処理して、前記処理済みのサービス・ページを前記利用者へ送信するため、前記サービス・ページを前記サード・パーティ開発サーバへ送信するステップとを含み、前記処理は、前記サービス・ページを、前記取引要求に対応するページに埋め込む処理を含む方法。
【請求項2】
前記呼び出し関係にしたがって、前記呼び出し順序が前記複数のオープンAPIに存在しない場合には、前記複数のオープンAPIのそれぞれに対応する複数のISPサーバのそれぞれへ、前記第1呼び出し要求を送信するステップを更に含む請求項1に記載の方法。
【請求項3】
前記呼び出し関係にしたがって、呼び出し順序が前記複数のオープンAPIに存在する場合、前記サービス・ページを前記サード・パーティ開発サーバへ送信する前に、前記サービス・ページに、前記複数のオープンAPIの前記呼び出し順序を埋め込むステップを更に含む請求項2に記載の方法。
【請求項4】
前記呼び出し順序にしたがって、前記第1オープンAPIの次に、且つ、前記サービス・ページに埋め込まれた第2オープンAPIを呼び出すための第2呼び出し要求を受信するステップと、
前記第2呼び出し要求を、前記第2オープンAPIに対応するISPサーバへ送信するステップと、
前記第2呼び出し要求にしたがって、前記第2オープンAPIに対応する前記ISPサーバから、サービス・ページを受信するステップと、
前記サード・パーティ開発サーバにより前記サービス・ページを処理し、前記処理済のサービス・ページを前記利用者に送信するため、前記サービス・ページを前記サード・パーティ開発サーバへ送信するステップと、を更に含む請求項3に記載の方法。
【請求項5】
前記第2呼び出し要求を、前記第2オープンAPIに対応するISPサーバへ送信する前に、
前記複数のオープンAPIの前記呼び出し関係にしたがって、前記第2オープンAPIを、前記第1オープンAPIを介して呼び出す必要があるかどうかを判定するステップと、
前記第2呼び出し要求を前記第2オープンAPIに対応する前記ISPサーバへ送信するステップと、
前記第1オープンAPIに対応する前記ISPサーバから、前記第2オープンAPIに対応する前記ISPサーバへ送信呼び出し要求を送信するステップと、
前記第1オープンAPIに対応する前記ISPサーバから、処理済のサービス・ページを受信するステップであって、前記サービス・ページは、前記第2オープンAPIに対応する前記ISPサーバから、前記第1オープンAPIに対応する前記ISPサーバによって受信され、前記第2オープンAPIに対応する前記ISPサーバのサービス・ページに埋め込まれていステップにより、
前記第2呼び出し要求に応答して、前記第2オープンAPIに対応する前記ISPサーバから、前記サービス・ページを受信するステップを更に含む請求項4に記載の方法。
【請求項6】
前記サービス・ページを前記取引要求に対応するページに埋め込むことは、前記サービス・ページを、前記取引要求に対応するページにIframe形式で埋め込むことを含む請求項1に記載の方法。
【請求項7】
前記呼び出し要求の中で呼び出し要求される前記オープンAPIに対応するISPを判定する前に、前記取引要求を送信する前記利用者を認証するステップを、更に含む請求項1に記載の方法。
【請求項8】
前記取引要求を送信する前記利用者を認証することは、
前記利用者がログインできた時、利用者ログイン識別情報を作成するステップと、
前記利用者が、各取引要求を送信する度に前記利用者ログイン識別情報が更新される際に、前記利用者ログイン識別情報は有効であるかどうかを判定するステップを含む請求項7に記載の方法。
【請求項9】
前記呼び出し要求の中で呼び出し要求される前記オープンAPIに対応する前記判定されたISPサーバが、複数のISPサーバを含む場合に、前記判定されたISPサーバへ前記第1呼び出し要求を送信することは、
ランダム・ルート・アルゴリズムを用いて、前記判定されたISPサーバの1つを見つけるステップと、
前記判定されたISPサーバのうちの前記見つけた1つに、前記第1呼び出し要求を送信するステップを含む請求項1に記載の方法。
【請求項10】
オープン・アプリケーション・プログラミング・インターフェース(API)に基づくネットワーク・ビジネスを実装する装置であって、
利用者の業務要求にしたがって、サード・パーティ開発サーバによって送られた複数のオープンAPIを呼び出す呼び出し要求を受信する第1受信部と、
前記複数のオープンAPI間の呼び出し関係を判定し、前記呼び出し関係にしたがって、呼び出し順序が前記複数のオープンAPIに存在すると判定された場合には、前記複数のオープンAPIの前記呼び出し順序の先頭にある第1オープンAPIに対応するインターネット・サービス・プロバイダー(ISPサーバへ前記呼び出し要求を送信する第1ISP呼び出し部と、
前記第1ISP呼び出し部によって送られた前記呼び出し要求にしたがって、前記ISPサーバから戻されたサービス・ページを受信して、前記サービス・ページを処理し、前記処理済のサービス・ページを前記利用者に送るため、前記サービス・ページを前記サード・パーティ開発サーバへ送り、前記処理には、前記サービス・ページを前記業務要求に対応するページに埋め込むことを含む第1呼び出し結果フィードバック部を含む装置。
【請求項11】
前記第1ISP呼び出し部は、
前記呼び出し関係にしたがって、前記呼び出し順序が、前記複数のオープンAPIに存在しないと判定された場合、前記複数のオープンAPIに対応する個々の複数のISPサーバへ、前記呼び出し要求を送信する請求項10に記載の装置。
【請求項12】
前記呼び出し関係にしたがって、前記呼び出し順序が、前記複数のオープンAPIに存在すると判定された場合、前記複数のオープンAPIの前記呼び出し関係を前記サービス・ページに埋め込み、前記埋め込み処理をしたサービス・ページを、前記呼び出し結果フィードバック部へ送る呼び出し関係埋め込み部を更に含む請求項11に記載の装置。
【請求項13】
前記第1オープンAPIの次に、且つ、前記第1呼び出し結果フィードバック部によって戻される前記サービス・ページ内に埋め込まれた前記呼び出し順序にしたがって始動する第2オープンAPIを呼び出すための呼び出し要求を受信する第2受信部と、
前記第2受信部によって受信される前記呼び出し要求を、前記第2オープンAPIに対応するISPサーバへ送信する第2ISP呼び出し部と、
前記第2ISP呼び出し部にしたがって、前記呼び出し要求に対応する前記第2オープンAPIに対応する前記ISPサーバから戻されたサービス・ページを受信して、前記サービス・ページを処理し、前記処理済のサービス・ページを前記利用者へ送信するため、前記サービス・ページを前記サード・パーティ開発サーバへ送信する第2呼び出し結果フィードバック部を更に含む請求項12に記載の装置。
【請求項14】
前記第2ISP呼び出し部は、
前記第2受信部により受信された前記呼び出し要求を、前記第2オープンAPIに対応する前記ISPサーバへ送信する前に、前記複数のオープンAPIの前記呼び出し関係にしたがって、前記第2オープンAPIは前記第1オープンAPIを介して呼び出す必要があるかどうかを判定する呼び出し関係解析モジュールと、
前記呼び出し関係解析モジュールの解析結果が、前記第2オープンAPIを呼び出す必要があるとされた場合、前記第2オープンAPIに対応する前記ISPサーバへ、前記呼び出し要求を送信する呼び出し要求送信モジュールを含み、
前記第2呼び出し結果フィードバック部は、前記第1オープンAPIに対応する前記ISPサーバによって処理され、前記戻されたサービス・ページを受信する受信モジュールを含み、前記サービス・ページは、前記第2オープンAPIに対応する前記ISPサーバによって戻されて、前記第1オープンAPIによって提供される前記サービス・ページに埋め込む前記第1オープンAPIに対応する前記ISPサーバにより受信されるサービス・ページであり、
前記第2呼び出し結果フィードバック部は、前記サービス・ページを処理して、前記処理済のサービス・ページを前記利用者へ送信するため、前記受信モジュールが受信した前記サービス・ページを前記サード・パーティ開発サーバへ送信するフィードバック・モジュールを含む請求項13に記載の装置。
【請求項15】
前記業務要求を送信する前記利用者を認証して、前記呼び出し要求の中で呼び出し要求されるオープンAPIに対応するISPを判定することを前記第1ISP呼び出し部に命令する認証部を更に含む請求項10に記載の装置。
【請求項16】
前記認証部は、
前記利用者が設定条件を満足する場合、前記利用者認証を判定する認証モジュールを含み、前記設定条件には、
前記利用者がログインできた時、利用者ログイン証明を作成し、前記利用者ログイン証明が有効であるかどうかを判定し、前記利用者ログイン証明は、前記利用者が前記業務要求を送信する度に更新され、
前記認証部は、前記利用者が認証されたことを、前記認証モジュールによって判定された場合、前記呼び出し要求の中で呼び出し要求された前記オープンAPIに対応するISPを判定することを、前記第1ISP呼び出し部に命令する命令モジュールを含む請求項15に記載の装置。
【請求項17】
前記第1ISP呼び出し部は、
前記呼び出し要求の中で呼び出し要求される前記オープンAPIに対応するISPの数を判定するISPサーバ判定モジュールと、
前記ISPサーバ判定モジュールによって判定された前記ISPが、複数のISPを含む場合、ランダム・ルート・アルゴリズムを用いて、前記複数のISPサーバの中からISPサーバを1つ見つけ、見つけた前記ISPサーバへ、前記呼び出し要求を送信するISPサーバ選択モジュールを含む請求項10に記載の装置。
【請求項18】
オープン・アプリケーション・プログラミング・インターフェース(API)に基づくネットワーク取引を実現するシステムであって、
サード・パーティ開発サーバと、
取引実行サーバと、
インターネット・サービス・プロバイダー(ISPサーバを含み、
前記サード・パーティ開発サーバは、利用者の取引要求にしたがって、複数のオープンAPIを呼び出す呼び出し要求を、前記取引実行サーバへ送信して、前記取引実行サーバから戻されたサービス・ページを受信して、前記利用者に提供する前に、前記サービス・ページを前記取引要求に対応するページに埋め込み、
前記取引実行サーバは、前記呼び出し要求に応答して、前記複数のオープンAPI間の呼び出し関係を判定し、前記呼び出し関係にしたがって、呼び出し順序が前記複数のオープンAPIに存在する場合には、前記複数のオープンAPIの前記呼び出し順序の先頭にある第1オープンAPIに対応する前記ISPサーバに前記呼び出し要求を送信し、前記ISPサーバから戻された前記サービス・ページを受信して、前記サービス・ページを前記サード・パーティ開発サーバへ送信し、
前記ISPサーバは、前記取引実行サーバによって送られた前記呼び出し要求にしたがって、対応するサービス・ページを前記取引実行サーバへ戻すことを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【0001】
関連特許出願の相互参照
本願は、参照によりその全体が本明細書に援用される「オープン・アプリケーション・プログラミング・インターフェースに基づくオンライン・ビジネス法、システム、並びに、装置」と題され、2010年6月10日に出願された中国特許出願第201010200821.1号の優先権を主張する。
【0002】
本発明は、ネットワーク通信技術分野に関し、具体的には、オープン・アプリケーション・プログラミング・インターフェース(API)に基づくネットワーク取引を実現する方法、並びに、そのシステムと装置に関する。
【背景技術】
【0003】
オープンAPIは、サービスとしてのソフトウェア(SaaS)モデルの下での共通アプリケーション・インターフェースである。インターネット・サービス・プロバイダー(ISP)は、利用可能なウェブサイトサービスを一連のAPIとして組み込み、サード・パーティ開発者、例えば、独立系ソフトウェアベンダ(ISV)に公開し、ISVは、ISVサーバを介して、関連ビジネス・ロジックを使用する。このような手法は、公開型ウェブサイトAPIと呼ばれ、公開されたAPIを、オープンAPIと呼ぶ。
【0004】
今後ますます、ISVは、ISPから提供されるオープンAPIに基づくアプリケーションの開発を目指し、ISPは、より多くのネットワーク・フロー、及び、市場占有率を受容する。ISVの場合、業務要件を満たすために、ハードウェア、及び、技術に膨大な投資をする必要がないので、投資コストは減少する。このため、インターネット・オンライン・サービスを開発基盤とするオープンAPIは、より多くのインターネット関連企業にとってサービスを開発する上で有望な選択肢の一つとなり、新たな開発の可能性を備えている。
【0005】
オープンAPIによるアプリケーションの可能性から、外国、及び、自国のウェブサイトのISPは、独自のオープンAPIウェブサイトを公開している(すなわち、オープンAPIに基づくオンライン・ビジネスのウェブサイト)。現状、一般的なオープンAPIは、Representational State Transfer(REST)インターフェースに基づくREST APIである。REST APIによるオンライン・ビジネスの実行中、RESTサービスは、インターネットを介したHTTP GETを用いて、業務実行サーバへ送られる。業務実行サーバは、POSTを用いて、RESTサービスに応答する。業務実行サーバは、RESTサービスに応答する結果として、構造データ、例えば、XML,Jason等を用いる。
【発明の概要】
【発明が解決しようとする課題】
【0006】
REST APIに基づくオンライン・ビジネスを実行するための上記手法には、幾つかの欠点がある。第1の欠点は、応答結果である構造データは、ISVから読み取られ易いということである。一般的な業務実行サーバから提供される業務データが、利用者以外のサード・パーティ(例えば、ISV)によって取得されることは望ましくない。したがって、業務実行サーバの観点から、上記手法によって実行されるオンライン・ビジネスに関するデータのセキュリティは低い。第2の欠点は、現在のオンライン・ビジネスのほとんどに、利用者とサービス・プロバイダー間に複数の対話を必要とする複雑な業務ロジック操作が伴われるということである。従来のオンライン・ビジネス実行法では、REST APIは、利用者とサービス・プロバイダー間の問い合わせ、データ更新等の対話を一度しか実行できない。複雑なオンライン・ビジネスの場合、ISVは、完璧なフローを実現するために、複数のREST APIを構築する必要があるが、これには、ISVが、複数のAPI呼び出しにビジネス・ロジックを解析することが求められる。これによって、(REST APIに基づくオンライン・ビジネスの実行)法の使い勝手が悪くなる。種々のISVの解析能力の違いを併せて考えると、業務の一貫性を保証することが難しくなることは明らかである。この結果、業務実行サーバによる業務の管理能力が、不十分となる。
【0007】
以上のことから、既存のAPIに基づくオンライン・ビジネスでは、業務データのセキュリティは、保証されず、且つ、業務の管理能力も不十分である。
【課題を解決するための手段】
【0008】
本開示は、オープンAPIに基づくネットワーク取引を実現する方法を紹介し、更に、この方法によるシステム、並びに、装置も紹介している。従来技術の欠点の一部、例えば、業務データのセキュリティの低さや、業務の不十分な管理能力は、本開示の導入により解消される。
【0009】
一態様では、オープンAPIに基づくネットワーク取引を実現する方法は、利用者からの取引要求にしたがって、サード・パーティ開発サーバから、オープンAPIを呼び出すための第1呼び出し要求を受信するステップと、呼び出し要求の中で呼び出し要求されるオープンAPIに対応するISPサーバを判定するステップと、判定されたISPサーバに第1呼び出し要求を送信するステップと、第1呼び出し要求にしたがって、ISPサーバから戻されるサービス・ページを受信するステップと、更に、サービス・ページを処理して、処理済のサービス・ページを利用者へと送信するために、サービス・ページをサード・パーティ開発サーバへ送信するステップを含むことが可能であり、サービス・ページの処理には、サービス・ページを取引要求に対応するページに埋め込む処理が含まれる。取引要求は、実装形態によっては、業務要求に関連してもよい。
【0010】
呼び出しを要求されたオープンAPIが複数のオープンAPIを含む場合、第1呼び出し要求を判定されたISPサーバに送信する前に、上記方法は、複数のオープンAPIの呼び出し関係を判定するステップと、更に、第1呼び出し要求を判定されたISPサーバへ送信するステップを含んでもよい。第1呼び出し要求を送信する処理は、呼び出し関係にしたがって、呼び出し順序が、複数のオープンAPIに存在する場合、第1呼び出し要求を、複数のオープンAPIの呼び出し順序の中で先頭にある第1オープンAPIに対応するISPサーバへ送信するステップと、更に、呼び出し関係に準じた呼び出し順序が、複数のオープンAPIの中に存在しない場合、第1呼び出し要求を、複数のオープンAPIのそれぞれに対応する複数のISPサーバのそれぞれへ送信するステップを更に含むことができる。
【0011】
呼び出し関係にしたがって、呼び出し順序が、複数のオープンAPIの中に存在する場合、サービス・ページをサード・パーティ開発サーバへ送信する前に、上記方法は、サービス・ページの中に、複数のオープンAPIの呼び出し順序を埋め込むステップを、更に含んでもよい。
【0012】
上記方法は、呼び出し順序にしたがって、第1オープンAPIの次に、且つ、サービス・ページの中に埋め込まれた第2オープンAPIを呼び出すための第2呼び出し要求を受信するステップと、第2呼び出し要求を、第2オープンAPIに対応するISPサーバへ送信するステップと、第2呼び出し要求にしたがって、第2オープンAPIに対応するISPサーバから、サービス・ページを受信するステップと、サード・パーティ開発サーバによってサービス・ページを処理し、処理済のサービス・ページを利用者へ送信するために、サービス・ページをサード・パーティ開発サーバに送信するステップを更に含んでもよい。
【0013】
第2呼び出し要求を、第2オープンAPIに対応するISPサーバへ送信する前に、上記方法は、複数のオープンAPIの呼び出し関係にしたがって、第2オープンAPIを、第1オープンAPIを介して呼び出す必要があるかどうかを判定するステップと、第2呼び出し要求を、第2オープンAPIに対応するISPサーバへ送信するステップと、第2呼び出し要求に応答して、第2オープンAPIに対応するISPサーバから、サービス・ページを受信するステップを更に含んでもよい。サービス・ページの受信は、例えば、送信呼び出し要求を、第1オープンAPIに対応するISPサーバから、第2オープンAPIに対応するISPサーバへ送信するステップと、第1オープンAPIに対応するISPサーバから、処理済のサービス・ページを受信するステップによって実現可能であり、サービス・ページは、第2オープンAPIに対応するISPサーバから、第1オープンAPIに対応するISPサーバによって受信され、このサービス・ページは、第2オープンAPIに対応するISPサーバのサービス・ページへと埋め込まれる。
【0014】
サービス・ページを取引要求に対応するページに埋め込むステップは、サービス・ページを、取引要求に対応するページにIframe(インライン・フレーム)形式で埋め込むステップを含むことができる。
【0015】
呼び出し要求の中で呼び出し要求されるオープンAPIに対応するISPを判定する前に、上記方法は、取引要求を送信する利用者を認証するステップを更に含んでもよい。
【0016】
取引要求を送信する利用者を認証するステップは、利用者がログインできた際に、利用者ログイン識別情報を作成するステップと、利用者が、それぞれの取引要求を送信する度に、利用者ログイン識別情報が更新される際、この利用者ログイン識別情報が有効であるかどうかを判定するステップを含むことが可能である。
【0017】
呼び出し要求の中で呼び出し要求されるオープンAPIに対応する判定されたISPサーバが、複数のISPサーバを含む場合、第1呼び出し要求を、判定されたISPサーバへと送信するステップは、ランダム・ルート・アルゴリズムを用いて、判定されたISPサーバの1つを見つけるステップと、第1呼び出し要求を、判定されたISPサーバのうち見つけたISPサーバの1つへ送信するステップを含むことができる。
【0018】
別の態様では、オープンAPIに基づくネットワーク取引を実現する装置は、利用者からの取引要求にしたがって、サード・パーティ開発サーバから送られたオープンAPIを呼び出すための呼び出し要求を受信する第1受信部と、第1受信部によって受信された呼び出し要求の中で呼び出し要求されるオープンAPIに対応するISPサーバを判定して、判定されたISPサーバに呼び出し要求を送信する第1ISP呼び出し部と、並びに、第1呼び出し結果フィードバック部であって、第1ISP呼び出し部から送られた呼び出し要求にしたがって、ISPサーバから戻されたサービス・ページを受信して、サービス・ページを処理し、処理済のページを利用者へ送信するために、サービス・ページをサード・パーティ開発サーバへ送信し、サービス・ページの処理は、サービス・ページを取引要求に対応するページに埋め込む処理を含む第1呼び出し結果フィードバック部とを含むことが可能である。
【0019】
第1ISP呼び出し部は、第1受信部が受信した呼び出し要求の中で呼び出し要求されるオープンAPIが、複数のオープンAPIを含む場合、複数のオープンAPIの呼び出し関係を判定する呼び出し関係判定モジュールと、呼び出し関係判定モジュールにより判定された呼び出し関係にしたがって、呼び出し順序が複数のオープンAPIに存在すると判定された場合、複数のオープンAPIの呼び出し順序の先頭にある第1オープンAPIに対応するISPサーバへ、呼び出し要求を送信する第1呼び出し実行モジュールと、並びに、呼び出し関係判定モジュールにより判定された呼び出し関係にしたがって、呼び出し順序が複数のオープンAPIに存在しないと判定された場合、複数のオープンAPIに個々に対応する複数のISPサーバへ、呼び出し要求を送信する第2呼び出し実行モジュールを含んでもよい。
【0020】
上記装置は、呼び出し関係にしたがって、呼び出し順序が複数のオープンAPI間に存在すると判定された場合、複数のオープンAPIの呼び出し関係をサービス・ページに埋め込み、埋め込み処理されたサービス・ページを、第1呼び出し結果フィードバック部へ提供する呼び出し関係埋め込み部を、更に含む場合もある。
【0021】
上記装置は、第1オープンAPIの次にあり、且つ、第1呼び出し結果フィードバック部から戻されたサービス・ページに埋め込まれた呼び出し順序にしたがって始動する第2オープンAPIを呼び出すための呼び出し要求を受信する第2受信部と、第2受信部によって受信された呼び出し要求を、第2オープンAPIに対応するISPサーバへ送信する第2ISP呼び出し部と、並びに、第2ISP呼び出し部にしたがって、呼び出し要求に対応する第2オープンAPIに関連するISPサーバから戻されたサービス・ページを受信し、これを処理して、処理済のサービス・ページを利用者へ送信するため、サービス・ページをサード・パーティ開発サーバへ送信する第2呼び出し結果フィードバック部を含んでもよい。
【0022】
第2ISP呼び出し部は、第2受信部によって受信された呼び出し要求を、第2オープンAPIに対応するISPサーバに送信する前に、第2オープンAPIを、複数のオープンAPI間の呼び出し関係にしたがって、第1オープンAPIを介し、呼び出すべきかどうかを判定する呼び出し関係解析モジュールと、呼び出し関係解析モジュールの解析結果が第2オープンAPIを呼び出す必要があると判定した場合、呼び出し要求を、第2オープンAPIに対応するISPサーバへ送信する呼び出し要求送信モジュールを含んでもよい。第2呼び出し結果フィードバック部は、第1オープンAPIに対応するISPサーバによって戻される処理済のサービス・ページを受信する受信モジュールを含むことができる。このサービス・ページは、第2オープンAPIに対応するISPサーバによって戻されて、第1オープンAPIに対応するISPサーバにより受信され、第1オープンAPIから供給されるサービス・ページに埋め込まれるサービス・ページである。更に、第2呼び出し結果フィードバック部は、サービス・ページを処理し、処理済みのページを利用者に送信するため、受信モジュールが受信したサービス・ページをサード・パーティ開発サーバへ送信するフィードバック・モジュールも含んでもよい。
【0023】
上記装置は、取引要求を送信する利用者を認証して、呼び出し要求の中で呼び出し要求されるオープンAPIに対応するISPを判定することを、第1ISP呼び出し部に命令する認証部を、更に含むこともある。
【0024】
上記認証部は、利用者が設定条件を満たす場合、利用者認証を判定する認証モジュールと、並びに、利用者が承認されたということが認証モジュールにより判定された場合、呼び出し要求の中で呼び出し要求されるオープンAPIに対応するISPを判定することを、第1ISP呼び出し部に命令する命令モジュールを含むことが可能である。設定条件には、利用者がログインに成功した場合の利用者ログイン証明を作成するステップと、利用者ログイン証明が有効であるかどうかを判定するステップを含んでもよい。利用者ログイン証明は、利用者から取引要求が送信される度に更新できる。
【0025】
第1ISP呼び出し部は、呼び出し要求の中で呼び出し要求されるオープンAPIに対応するISPの数を判定するISPサーバ判定モジュールと、並びに、ISPサーバ判定モジュールにより判定されたISPが複数のISPを含む場合、ランダム・ルート・アルゴリズムを用いて、複数のISPサーバから1つを見つけ、呼び出し要求を見つけたISPサーバに送信するISPサーバ選択モジュールを含んでもよい。
【0026】
別の態様ではさらに、オープンAPIに基づくネットワーク取引を実現するシステムは、サード・パーティ開発サーバと、取引実行サーバと、並びに、ISPサーバとを含むことができる。サード・パーティ開発サーバは、利用者からの取引要求にしたがって、オープンAPIの呼び出し要求を、取引実行サーバへ送信して、取引実行サーバから戻されたサービス・ページを受信し、更に、サービス・ページを、取引要求に対応するページに埋め込んでから、利用者へ送信できる。取引実行サーバは、呼び出し要求に応答して、呼び出し要求内で要求されるオープンAPIに対応するISPサーバを判定して、判定されたサーバに呼び出し要求を送信し、ISPサーバから戻されたサービス・ページを受信し、更に、サービス・ページをサード・パーティ開発サーバへ送信することが可能である。ISPサーバは、取引実行サーバから送られた呼び出し要求にしたがって、対応するサービス・ページを取引実行サーバへ戻すことができる。
【0027】
本開示によれば、データ・セキュリティの観点から、サービス・ページを介して、サービス・データをサード・パーティ開発サーバへ送るほうが、従来方式のように構造形式データをサード・パーティ開発サーバへ直接戻すより安全である。更に、サード・パーティ(開発)サーバとISP間のサーバによって、業務全体の管理機能が実装されるため、サード・パーティ開発サーバは、業務ロジックを解析する必要がなく、結果として、管理能力が向上する。
【図面の簡単な説明】
【0028】
図1】本開示の実施形態に係るオープンAPIに基づくオンライン・ビジネスを実現する方法の流れ図1である。
図2】本開示の実施形態に係る呼び出し要求をISPサーバに送信するプロセスの流れ図である。
図3】本開示の実施形態に係る次オープンAPIを始動する呼び出しプロセスの流れ図1である。
図4】本開示の実施形態に係る次オープンAPIを始動する呼び出しプロセスの流れ図2である。
図5】本開示の実施形態に係るオンライン・ビジネスを実現するシステムの相互作用を示す図である。
図6】本開示の実施形態に係るオープンAPIに基づくオンライン・ビジネスを実現する方法の流れ図2である。
図7】本開示の実施形態に係る認証するために認証コンポーネントを用いる流れ図である。
図8】本開示の実施形態に係るオープンAPIに基づくオンライン・ビジネスを実現するシステムの図である。
図9】本開示の実施形態に係るオープンAPIに基づくオンライン・ビジネスを実現する装置1の図である。
図10】本開示の実施形態に係る第1ISP呼び出し部の構造1の図である。
図11】本開示の実施形態に係るオープンAPIに基づくオンライン・ビジネスを実現する装置2の図である。
図12】本開示の実施形態に係るオープンAPIに基づくオンライン・ビジネスを実現する装置3の図である。
図13】本開示の実施形態に係る第2ISP呼び出し部、及び、第2呼び出し結果フィードバック部の構造の図である。
図14】本開示の実施形態に係るオープンAPIに基づくオンライン・ビジネスを実現する装置4の図である。
図15】本開示の実施形態に係る認証部の構造の図である。
図16】本開示の実施形態に係る第1ISP呼び出し部の構造2の図である。
【発明を実施するための形態】
【0029】
業務のデータ・セキュリティと管理能力の双方を高める手法を提供するため、本開示では、オープンAPIに基づくオンライン・ビジネスの実行法、システム、並びに、装置を提供している。以下で説明する技術は、方法、または、装置の形態でオンライン取引を実現するのに使用できる。この取引は、本来、オンライン電子商取引で使用されるような業務取引である。好ましい実施形態を、本開示の範囲を制限せずに説明をする目的で図面を参照することで、以下に説明する。
【0030】
図1は、本開示の実施形態に係るオープンAPIに基づくオンライン・ビジネスを実現する方法を説明している。この方法は、以下の複数のステージを含む。
【0031】
ステージ101:取引実行サーバが、サード・パーティ開発サーバから、オープンAPIの呼び出し要求を受信する。この要求は、利用者の取引要求に基づいて送られる。前述のように、実装形態によっては、取引要求は、電子商取引で使用されるような業務取引のための業務要求と関連しており、取引実行サーバは、業務実行サーバと考えることもできる。
【0032】
ステージ102:業務実行サーバは、呼び出し要求の中で呼び出し要求されるオープンAPIに対応するISPを判定し、判定されたISPサーバへ呼び出し要求を送信する。
【0033】
ステージ103:業務実行サーバは、呼び出し要求にしたがって、ISPサーバから戻されるサービス・ページを受信する。
【0034】
ステージ104:業務実行サーバは、サービス・ページをサード・パーティ開発サーバへ送信して、サード・パーティ開発サーバは、サービス・ページを処理し、利用者に送る。
【0035】
ステージ104:サード・パーティ開発サーバは、サービス・ページを業務要求に対応するページに埋め込むことにより、サービス・ページを処理する。
【0036】
前述のオンライン・ビジネスの実装方法は、業務実行サーバが対応するネットワーク環境に導入されたサーバとなることが可能な種々のネットワーク環境に適用でき、更に、ネットワーク環境に実現される業務を制御、及び、管理するのに使用できる。サード・パーティ開発サーバは、ISVサーバである。
【0037】
ある実施形態では、呼び出し要求の中で呼び出し要求されるオープンAPIが、複数のオープンを含む場合、呼び出し要求を判定されたISPサーバへ送る前、すなわち、ステージ102よりも前に、更に、複数のオープンAPIの呼び出し関係を判定することもできる。
【0038】
複数のオープンAPI間の呼び出し関係は、呼び出し順序が、複数のオープンAPIに存在するかどうかを示している。ある実施形態によれば、複数のオープンAPIは、呼び出し順序を持つオープンAPIを含むことができ、更に、他のオープンAPIと呼び出し順序を共有し合う独立したオープンAPIを含むことも可能である。
【0039】
複数のオープンAPIの呼び出し関係を判定した後、図1で示したプロセスのステージ102では、呼び出し要求を、判定したISPサーバへ送信し、図2に示すように、以下に述べる複数のステージを含む。
【0040】
ステージ201:複数のオープンAPIに存在する呼び出し関係にしたがって、呼び出し順序が、複数のオープンAPIに存在するかどうかを判定する。呼び出し順序が存在すれば、このプロセスは、ステージ202へ進み、呼び出し順序が存在しなければ、ステージ203へ進む。
【0041】
ステージ202:呼び出し要求を、複数のオープンAPIの呼び出し順序の先頭にある第1オープンAPIに対応するISPサーバへ送信し、図1のステージ103へ進む。
【0042】
ステージ203:呼び出し要求を、複数のオープンAPIのそれぞれに対応する複数のISPサーバのそれぞれに送信し、図1のステージ103へ進む。
【0043】
一実施形態によれば、呼び出し要求の中で呼び出し要求されるオープンAPIが、複数のオープンAPIを含み、且つ、複数のオープンAPIに呼び出し順序が存在する場合、呼び出し順序の最後のオープンAPIが呼び出されるまで、業務ロジックにしたがって、複数の呼び出しを実行する。呼び出し順序に基づく第1呼び出しの実行後、及び、サービス・ページのサード・パーティ開発サーバへ送信する前、すなわち、図1のステージ104の前に、このプロセスは、さらに複数のオープンAPIの呼び出し順序を、サービス・ページに埋め込むことができる。
【0044】
上記のステージを実行することによって、オープンAPIの呼び出し順序は、利用者に戻されるサービス・ページに埋め込まれる。利用者は、次のオープンAPI呼び出しフロー、つまり、以下の説明および図3に示すように、複数のステージを含むプロセスを始動できる。
【0045】
ステージ301:業務実行サーバは、サービス・ページに埋め込まれた呼び出し順序にしたがって、利用者により始動され、第1オープンAPIの次の第2オープンAPIの呼び出し要求を受信する。
【0046】
ステージ302:呼び出し要求を、第2オープンAPIに対応するISPサーバへ送信する。
【0047】
ステージ303:呼び出し要求にしたがって、第2オープンAPIに対応するISPサーバから戻されたサービス・ページを受信する。
【0048】
ステップ304:サービス・ページをサード・パーティ開発サーバへ送り、サービス・ページを処理して、利用者へ送信する。
【0049】
図3で示したプロセスによれば、業務実行サーバは、利用者により始動された次オープンAPI呼び出し要求にしたがって、呼び出し要求のための呼び出しプロセスを実行する。ある実施形態によれば、利用者が次のオープンAPIの呼び出しプロセスを始動した後、種々のオープンAPIに対応するISPサーバ間の相互呼び出しに対応できる。例えば、複数のISPサーバの相互作用を伴う複雑な業務では、第1オープンAPIに対応するISPサーバから提供される業務を呼び出した後、第2オープンAPIに対応するISPサーバから提供される業務も、呼び出す必要となる場合がある。しかし、第2オープンAPIに対応するISPサーバは、特定のISPサーバからのアクセスにしか対応できないことがある。一般に、このISPサーバは、初めて呼び出されるオープンAPIに対応するISPサーバである。このような状況下では、第2オープンAPIに対応するISPサーバから提供される業務を取得するため、第2オープンAPIに対応するISPサーバは、第1オープンAPIに対応するISPサーバを介して、呼び出す必要がある。とりわけ、業務実行サーバは、利用者が始動する次のオープンAPIの呼び出し要求にしたがって、図4に示される呼び出し要求の呼び出しプロセスを実行する。
【0050】
ステップ401:業務実行サーバは、サービス・ページに埋め込まれた呼び出し順序にしたがって利用者により始動される第1オープンAPIの次の第2オープンAPIの呼び出し要求を受信する。
【0051】
ステージ402:複数のオープンAPIの呼び出し関係にしたがって、第2オープンAPIを、第1オープンAPIによって呼び出す必要があるかどうかを判定する。第2オープンAPIを、第1オープンAPIを介して呼び出す必要がある場合、このプロセスは、ステージ403‐404へ進み、第2オープンAPIを呼び出す必要がなければ、ステージ405‐406へ進む。
【0052】
ステージ402:第1オープンAPIと第2オープンAPIの間で、相互呼び出し関係が存在する場合、第2オープンAPIの呼び出しは、第1呼び出しオープンAPIを介して実行する必要がある。
【0053】
ステージ403:第1オープンAPIに対応するISPサーバを介して、呼び出し要求を、第2オープンAPIに対応するISPサーバへ送信する。
【0054】
ステージ404:第1オープンAPIに対応するISPサーバから戻された処理済サービス・ページを受信して、ステージ407へ進む。
【0055】
ステージ404:第1オープンAPIに対応するISPサーバは、第2オープンAPIに対応するISPサーバから戻されるサービス・ページを受信して、受信したサービス・ページを、このISPサーバのサービス・ページに埋め込む。
【0056】
ステージ405:呼び出し要求を、第2オープンAPIに対応するISPサーバへ送信する。
【0057】
ステージ406:呼び出し要求にしたがって、第2オープンAPIに対応するISPサーバから戻されたサービス・ページを受信して、ステージ407へ進む。
【0058】
ステージ407:サービス・ページをサード・パーティ開発サーバへ送信して、サービス・ページを処理し、利用者へ送る。
【0059】
一実施形態によれば、ISPから戻されたサービス・ページの業務要求に対応するページに埋め込むことは、サービス・ページを業務要求に対応するページにIframe(インナー・フレーム)形式で埋め込む処理を含むことができる。
【0060】
Iframe形式で埋め込まれたページは、Iframe要素であり、これは、ページ内のフローティング・フレームであると認識できる。1組のフレームは、Iframeのコンテンツへのアクセス権限を提供する。実際の実装では、フレームの組を用いて、Iframe内に含まれる要素を読み書きできる。
【0061】
Iframeは、インナー・フレームとしても知られ、ウェブ・ページを既存のウェブ・ページに埋め込む手法である。埋め込まれたウェブ・ページは、既存ウェブ・ページの指定フレーム位置内に表示される。だが、利用者には、表示されているウェブ・ページが、異なる2つのウェブ・ページからのものであるとことが分かってはならない。本開示の実施形態では、Iframeの特徴を用いて、ISPサービスのウェブ・ページを開き、セキュリティ、及び、ユーザ・エクスペリエンスの質を確保している。
【0062】
本開示の実施形態によれば、業務実行のセキュリティ、及び、管理機能を向上させるため、呼び出し要求の中で呼び出し要求されるオープンAPIに対応するISPを判定する前、すなわち、図1に示したプロセスのステージ102より前に、このプロセスでは更に、業務要求を送信する利用者を認証して、利用者が認証を通った後に、ステージ102を実行することができる。
【0063】
具体的には、業務要求を送信する利用者の認証は、種々の方法、例えば、ログイン・インターフェースを利用者へ返し、利用者が登録利用者であれば、ログイン・インターフェースを介して、登録済のアカウント、及び、パスワードを送信するよう利用者に要求し、一方、利用者が登録済利用者でなければ、まずログイン・インターフェースを介して登録するよう利用者に要求し、登録情報が確認されたら、利用者のログインを許可することにより実行できる。
【0064】
実際の業務実行の場合、一般に、利用者とネットワーク・サーバの間に複数の相互作用が伴う。利用者のログインの妥当性を保証するため、本開示の実施形態によれば、利用者のログインの成功後、このプロセスでは、利用者が業務要求を送信する度に更新される利用者のログイン証明を検証することが可能である。ログイン証明が有効であれば、利用者は認証を通過し、無効であれば、利用者の業務要求は拒否される。利用者のログイン証明は、利用者のログインの成功後に作成される。実際の業務実行では、利用者ログイン証明の作成と更新は、以下の通りに実行可能である。
【0065】
一部の実施形態では、業務実行は、一般にブラウザーで送ることができる。業務実行サーバは、利用者ログインを検証した後、ログインのプロセス中に生成される利用者のログイン証明のクッキーを、クッキーの時間情報と併せて、ブラウザーに書き込む。この利用者が、再度アクセスする際(例えば、オープンAPIの呼び出し)、クッキーの有効性の検証中に、利用者識別情報の有無の検証の他、現在のアクセスとクッキーがブラウザーに書き込まれた最後の時間間隔が所定の時間間隔内にあるかどうかも検証される。すなわち、業務実行サーバは、オープンAPIが呼び出される度に、クッキーを検証し、更新できる。利用者が、長時間オープンAPIを呼び出さない場合、次回、利用者は、業務のセキュリティを向上させるため、再度ログインする必要があるだろう。
【0066】
本開示の実施形態によれば、呼び出し要求の中で呼び出し要求されるオープンAPIに対応する判定されたISPサーバが、複数のISPサーバを含む場合、呼び出し要求を判定された1つ以上のISPサーバへ送る。この呼び出し要求の送信には、判定された複数のISPサーバのうち任意の1つの呼び出し要求の送信を含むことができる。
【0067】
判定された複数のISPサーバの任意の一つに呼び出し要求を送信することは、ランダム・ルート・アルゴリズムによって実装できることが望ましい。すなわち、呼び出し要求は、ランダム・ルート・アルゴリズムにしたがって、判定された複数のISPサーバの任意の一つのISPサーバへ送られる。その間、ISPサーバの「ハートビート」試験が可能であり、ISPのランダム・リストは、ISPの状態にしたがって、動的に更新される。例えば、ISPの試験結果が、ISPの異常状態を示していれば、このISPはランダム・リストから削除されて、次回の呼び出し要求には、そのサーバに送られることはない。ISPの試験結果が、ISPの正常状態を示していれば、ISPはランダム・リストに再度追加され、次回の呼び出し要求には、その対応サーバへ送信される場合がある。
【0068】
ある実施形態では、業務を提供するISPは、HTTPソフト・ロードを介して、複数のISPサーバから特定できる。
【0069】
HTTPソフト・ロードは、ミドルウェア構成サーバ(すなわち、業務実行サーバ)に基づいて実装できる。ISPサーバはそれぞれ、HTTPサービスを構成サーバに登録する。構成サーバのクライアント側は、ISPサーバに無作為に接続して、構成サーバの登録アドレスに基いて、HTTP要求を送信する。各ISPサービスは、サーバ側ターゲットを介して、アドレス情報を構成サーバに公開し、各クライアント側は、クライアント側ターゲットを介して、構成サーバの必要サービスに加入する。構成サーバは、新規で利用可能な全てのサービスのリストをクライアント側へ送って、クライアント側は、ルート・アルゴリズム(恐らく、ランダム・ルート・アルゴリズム)を介して呼び出すためのサービス・アドレスを一つ選択する。とりわけ、構成サーバへ送られるアドレス・リストは、文字列で表示可能である。
【0070】
本開示の実施形態によれば、ISPサーバから戻されるサービス・ページには、場合によっては以下に述べる2つの形式がある。
【0071】
形式1:ISPサーバが、サービス・ページを戻して、ISVはISPから戻されたサービス・ページを自身のサービス・ページに埋め込む。利用者に戻される最終結果のページは、ISPアプリケーション、つまり、開発者によって開発されたソフトウェアに対応するドメイン名に表示される。すなわち、利用者にISPアプリケーションのドメイン名であることがわかるように、ISPアプリケーションのドメイン名は利用者に戻される結果のページに埋め込まれる。
【0072】
形式2:ISPサーバは、取得したページの先頭と末尾間のリンクに応じて、サービス・ページを表示し、サービス・ページは細部を整えられ、業務実行サーバに戻す。利用者に戻される最終結果のページは、業務実行サーバに対応するドメイン名として表示される。ページの先頭と末尾間のリンクは、APIの呼び出しによってISVのアプリケーションが入力したパラメータ情報であり、サービス・ページの細部を整えることには、このパラメータ情報に基づく完成したページを作成することを含む。
【0073】
本開示の実施形態によれば、本開示は、種々の業務要件を満たすことができる。例えば、処理を進める業務プロセスの順序で、業務実行サーバのドメイン名を利用者に表示することが求められる業務要件がある。説明の例として、返済業務の場合、利用者はパスワードを入力するよう求められる。セキュリティの抜け穴及びこれに起因する問題を低減するよう、利用者がパスワードを入力するウィンドーは、業務実行サーバのドメイン名に対応するページの下に表示する必要がある。利用者は、パスワードが第3者によって盗難されないよう、ドメイン名が正規なものであることを確認した後に、パスワードを入力する。
【0074】
本開示の実施形態から提供される技術をより理解できるよう、実施形態の詳細について業務実行を制御する業務実行サーバの特定例と併せて説明する。
【0075】
図5は、本開示の実施形態に係るオンライン・ビジネスを実現するシステムの相互作用の図である。関連する主な構成要素は、サード・パーティ開発サーバISV、業務実行サーバ、複数のISP(便宜上、図5では、ISPを3つ示している)、及び、認証コンポーネントを含む。
【0076】
ISVから発行される呼び出し要求は、ページAPI呼び出し(すなわち、呼び出し関係のある複数のオープンAPIの呼び出し)、及び、REST API呼び出し(すなわち、他のオープンAPIと呼び出し関係を持たない1つ以上のオープンAPIの呼び出し)を含むことができる。
【0077】
業務実行サーバは、業務実行時のセキュリティ及びフロー制御に関与する。図5に示すように、業務実行サーバは、1つ以上のISV、及び、1つ以上のISP間のコネクターとして機能し、オープンAPIを呼び出す呼び出し要求を、ISVから対応のISPへ送信する。APIプロセスは、1つ以上のISPとの相互作用に関する複数の操作を含み、この操作には、例えば、ページ相互作用操作や、通常のREST APIの操作が含まれる。同様に、プロセス・フロー・ページAPIの処理中、ISPは、他のISPから提供されるサービスを呼び出して、他のISPから供給される1つ以上のページを、自身のページに埋め込み、埋め込んだページを、業務実行サーバがISVへ送信するために、業務実行サーバへ戻す。
【0078】
認証コンポーネントは、種々の認証プロセス、例えば、業務実行サーバによるISVの認証、ISPによる業務実行サーバの認証等に関与する。
【0079】
図6は、オープンAPIに基づく業務の実装の実施形態を説明している。この図では、業務フローが、オープンAPIを3回呼び出す必要があり、ISP2のサービスは、ISP1に応答する2度目の操作の中で呼び出される必要がある。
【0080】
ステージ601:利用者は業務要求をISVへ発行する。
【0081】
このステージでは、利用者から発行される業務要求には、入札要求、返金要求等が含まれる。利用者は、このような業務要求を発行する前に、ログインする必要がある。
【0082】
ステージ602:ISVは、アプリケーションAPPを介して、呼び出し要求をオープンAPIへ発行する。
【0083】
このステージにおいて、呼び出し要求は、APIを呼び出すのに必要なパラメータ、及び、このパラメータに関する署名情報を含む。
【0084】
ステージ603:業務実行サーバは、要求の受信後、利用者ログイン情報及びクッキーを検証する。検証が通れば、プロセスは次のステージに進み、検証が通らなければ、利用者の要求を拒否する(図示せず)。
【0085】
ステージ604:業務実行サーバは、ISVのアクセス権限を検証する。この検証には、ISVはAPIを呼び出してフローを制御する権限を与えられているかどうかを検証する処理が含まれる。この検証が通れば、プロセスは次ステージに進み、検証が通らなければ、呼び出し要求を拒否する(図示せず)。
【0086】
ステージ605:業務実行サーバは、呼び出し要求を解析することで、オープンAPIのISP1をサポートしているかどうかを判定して、呼び出し要求をISP1サーバへ送信する。
【0087】
ステージ606:ISP1サーバは、呼び出し要求の受信後、業務実行サーバの署名を検証する。この署名が検証を通ったら、プロセスは次ステージへ進み、検証を通らなければ、エラー・メッセージを戻す(図示せず)。
【0088】
ステージ607:ISP1サーバは、サービス・ページを業務実行サーバへ戻す。
【0089】
ステージ608:業務実行サーバは、ISP1から戻されたサービス・ページを埋め込み、ISVのAPPへ戻す。
【0090】
ステージ609:ISVのAPPは、戻されたサービス・ページを自身のアプリケーション・ページに埋め込んでから、利用者に表示する。
【0091】
ステージ610:利用者は、戻されたサービス・ページをクリックして、第2ステップの要求を始動する。この要求は、直接業務実行サーバへ送られる。
【0092】
ステップ611:業務実行サーバは、要求の受信後、利用者を認証する。認証が通ると、プロセスは次のステージに進み、認証が通らなければ、エラー・メッセージを戻す(図示せず)。
【0093】
ステージ612:業務実行サーバは、呼び出し要求の解析時に、要求をISP1サーバへ送る。
【0094】
ステージ613:ISP1サーバは、呼び出し要求の受信後、業務実行サーバの署名を検証する。署名が検証を通れば、処理は次のステップに進み、署名が検証を通らなければ、エラー・メッセージを戻す(図示せず)。
【0095】
ステージ614:ISP1サーバは、要求解析時に、ISP2から提供されるサービスを呼び出す必要があるかどうかを判定し、ISP2を呼び出す要求をISP2サーバへ送る。
【0096】
ステージ615:ISP2は、利用者のクッキーを検証する認証コンポーネントを介して、利用者の識別情報を検証する。この検証が通れば、検証結果をISP2サーバへ戻して、次のステージに進め、検証が通らなければ、利用者ログイン・ページへ移って、利用者にログインし直すよう求める(図示せず)。
【0097】
ステージ616:ISP2サーバは、サービス要求に応答して、サービス・ページをISP1サーバへ戻す。
【0098】
ステージ617:ISP1サーバは、ISP2サーバから戻されたサービス・ページを自身のページに埋め込んで、業務実行サーバへ戻す。
【0099】
ステージ618:業務実行サーバは、ISP1サーバから戻されたサービス・ページを埋め込んで、ISVのAPPへ送る。
【0100】
ステージ619:ISVのAPPは、戻されたページを自身のサービス・ページに埋め込んで、ぺージを利用者に表示する。
【0101】
ステージ620:利用者は、戻されたサービス・ページをクリックして、プロセスの第3操作を始動する。この要求は業務実行サーバへ直接送られる。
【0102】
ステージ621:業務実行サーバは、要求の受信後、利用者を認証する。認証が通ると、プロセスは次のステージに進み、認証が通らなければ、エラー・メッセージを戻す(図示せず)。
【0103】
ステージ622:業務実行サーバは、呼び出し要求の解析時に、要求をISP1サーバへ送る。
【0104】
ステージ623:ISP1サーバは、呼び出し要求の受信後、業務実行サーバの署名を検証する。署名が検証を通れば、プロセスは次のステージへ進み、署名が検証を通らなければ、エラー・メッセージを戻す(図示せず)。
【0105】
ステージ624:ISP1は、自身のサービス・ページをISVのAPPへ戻す。
【0106】
ステージ625:ISVのAPPは、ISP1サーバから戻された結果情報にしたがって、結果ページを埋め込み、利用者に表示する。
【0107】
上記プロセスでは、業務実行サーバは、遷移、送信、制御、及び、監視機能を提供する。外部ISVが、要求を業務実行サーバへ発行する時、業務実行サーバは、要求の受信に応答して、ISVはページにアクセスする権限をあたえられているかどうかを検証する。この検証結果、ISVがページにアクセスする権限が与えられていれば、業務実行サーバは、要求をISPへ送信し、ISPの署名検証を取得し、ISPから戻されたデータを解析し、このデータを外部ISVへ戻す。ある実施形態では、業務実行サーバとISPの間の呼び出し用に、HTTPを使用できる。すなわち、ISPは、HTTPサービスを提供できる。業務実行サーバは、HTTPクライアント側を介して、ISPページにアクセスして、ISPは、ISPページの内容を、業務実行サーバへ直接出力する。実施形態によっては、以下に述べるように、業務実行サーバは、オープンAPIを呼び出すための呼び出し要求の受信後、複数の判定を実行することができる。
【0108】
業務実行サーバは、ブラウザー内のクッキーが有効であるかどうかを判定できる。
【0109】
業務実行サーバは、署名パラメータが適切であるかどうかを判定できる。署名証明パラメータは、ISV利用者から導入されたデータの検証に使用される。署名パラメータは、ISVがAPIを呼び出す前に、ISVと業務実行サーバの双方が合意したアルゴリズムにしたがって生成され、API呼び出し中に導入される。
【0110】
業務実行サーバは、Appkeyパラメータが適正であるかどうか、Appkeyパラメータが、現ページAPIのアクセス権限を持っているかどうかを判定できる。各APIにアクセスするアプリケーションの証明及びキーは、Appkeyパラメータ(AppkeyとAPP秘匿情報を含む)と呼ばれ、アプリケーションごとのセキュリティを認証、及び、制御するのに使用される。Appkeyパラメータは、ISVがAPIを呼び出す際、導入される。
【0111】
業務実行サーバは、セッション・パラメータがクッキーの利用者に対応しているかどうかを判定できる。ISVによって開発されたアプリケーションが、業務実行サーバから供給される情報を取得する際、この情報が、利用者の機密情報であれば、情報取得前に、利用者はログインする必要がある。利用者は、利用者認証下で、データにアクセスできることを示すため、ログイン後、セッション・パラメータ(セッション・キー)を取得する。この情報は、利用者のログイン時に作成され、API呼び出し中に導入される。
【0112】
業務実行サーバは、タイムスタンプ・パラメータと現在時間との時間間隔が、30分以内であるかどうかを判定できる。タイムスタンプ・パラメータは、ISVアプリケーションがAPIにアクセスする回数を制御するのに使用され、業務実行サーバによって作成される。タイムスタンプ・パラメータは、利用者のブラウザーのクッキーに書き込まれて、利用者は、ページ訪問によってAPIにアクセスする際にタイムスタンプ・パラメータを取得するため、クッキーを読み取る。
【0113】
業務実行サーバは、セッション・パラメータに対応する利用者が、対応するAppkeyパラメータにアクセスする権限を持っているかどうかを判定できる。
【0114】
上記判定のいずれにも該当しなければ、利用者の認証は通らない。
【0115】
更に、上記プロセスにおいて、認証コンポーネントは、ログイン検証に関する統合機能を提供する。ある実施形態では、認証コンポーネントは、独立サーバとして存在できる。つまり、認証コンポーネントを、業務実行サーバやISPのものとは異なるドメイン名を使用できる。クッキーは、業務実行サーバのドメインに書き込まれる。他のISPを認証する際には、クッキーが、業務実行サーバのドメイン内にあるかどうかを判定するだけでよい。他のドメインが、業務実行サーバのドメイン内のクッキーへアクセス可能となるよう、アクセス中に、P3Pヘッダを使用できる。
【0116】
図7では、認証コンポーネントを用いた認証プロセスを示し、このプロセスは、以下に述べる複数のステージを含むことができる。
【0117】
ステージ701:利用者は、ログイン要求をISVへ送信する。
【0118】
ステージ702:ISVは、APPを介して、ログイン要求を業務実行サーバへ送り、自身の認証パラメータ(複数)を業務実行サーバへ送信する。
【0119】
ステージ703:業務実行サーバは、要求の受信後、ログイン要求を認証コンポーネントへ送る。
【0120】
ステップ704:認証コンポーネントは、業務実行サーバからのログイン要求の受信後、利用者ログイン・ページへ遷移する。利用者は、利用者名とパスワードを入力する。検証が通った場合、処理は次のステージへ進み、検証が通らなければ、処理は、ログイン・ページに戻る(図示せず)。
【0121】
ステージ705:認証コンポーネントは、クッキーを書き込む要求を業務実行サーバへ発行する。
【0122】
ステップ706:業務実行サーバは、要求受信後、1つ以上の要求パラメータに応じて、セキュリティ検証を実行する。検証が通ると、業務実行サーバは、クッキーを書き込む。
【0123】
ステージ707:業務実行サーバは、クッキーの書き込む結果に対する応答を認証コンポーネントへ戻す。
【0124】
オープンAPIに基づくオンライン・ビジネスの実装プロセスを、システムとして実装できる。図8で示すように、本開示の実施形態により提供されるオープンAPIに基づくオンライン・ビジネスの実装システムに対応するネットワーク接続形態を提供している。このシステムは、サード・パーティ開発サーバ801、業務実行サーバ802、及び、ISPサーバ803を含むことができる。実施形態によっては、ISPサーバが複数あってもよい。便宜上、図8では、ISPサーバを2つだけ示している。
【0125】
業務実行サーバ802の利用者は、オンライン・ビジネスを展開、制御できる。具体的には、各サーバは、以下に述べる各機能を実行する。
【0126】
サード・パーティ開発サーバ801は、利用者の業務要求にしたがって、オープンAPIを呼び出すための呼び出し要求を、業務実行サーバ802へ送信する。サード・パーティ開発サーバ801は、業務実行サーバ802から戻されるサービス・ページを受信し、このページを、利用者に送信するための業務要求に対応するページに埋め込む。
【0127】
業務実行サーバ802は、サード・パーティ開発サーバ801から送られた呼び出し要求にしたがって、呼び出し要求の中で呼び出し要求されるオープンAPIに対応するISPサーバ803を判定し、判定されたISPサーバ803へ呼び出し要求を送信する。業務実行サーバ802は、ISPサーバ803から戻されたサービス・ページを受信し、サード・パーティ開発サーバ801へ送る。
【0128】
ISPサーバ803は、業務実行サーバ802から送られた呼び出し要求にしたがって、対応するサービス・ページを業務実行サーバ802へ戻す。
【0129】
オープンAPIに基づくネットワークを実現するプロセスは、装置として実装できる。図9に示すように、上記プロセス、及び、本開示の実施形態に対応するオープンAPIに基づくオンライン・ビジネスを実現する装置を提供している。この装置は、第1受信部901、第1ISP呼び出し部902、及び、第1呼び出し結果フィードバック部903を含むことができる。
【0130】
第1受信部901は、利用者の業務要求にしたがって、サード・パーティ開発サーバから送られたオープンAPIを呼び出す呼び出し要求を受信する。
【0131】
第1ISP呼び出し部902は、第1受信部901によって受信された呼び出し要求の中で呼び出し要求されるオープンAPIに対応するISPサーバを判定して、このISPサーバに呼び出し要求を送信する。
【0132】
第1呼び出し結果フィードバック部903は、第1ISP呼び出し部902から送られた呼び出し要求にしたがって、ISPサーバから戻されたサービス・ページを受信して、このページをサード・パーティ開発サーバへ送信する。サード・パーティ開発サーバは、サービス・ページを処理して、処理済のサービス・ページを利用者へ送信する。サード・パーティ開発サーバは、サービス・ページを業務要求に対応するページに埋め込むことで、サービス・ページを処理する。
【0133】
図10に示すように、本開示の一実施形態によれば、第1ISP呼び出し部902は、呼び出し関係判定モジュール902A、第1呼び出し実行モジュール902B、及び、第2呼び出し実行モジュール902Cを更に含むことができる。
【0134】
呼び出し関係判定モジュール902Aは、第1受信部901が受信した呼び出し要求の中で呼び出し要求されるAPIが、複数のオープンAPIを含む場合、複数のオープンAPIの呼び出し関係を判定する。
【0135】
第1呼び出し実行モジュール902Bは、呼び出し関係モジュール902Aにより判定された呼び出し関係にしたがって、呼び出し順序が、複数のオープンAPIに存在すると判定された場合、複数のオープンAPIの呼び出し順序の先頭にある第1オープンAPIに対応するISPサーバへ、呼び出し要求を送信する。
【0136】
呼び出し関係判定モジュール902Aによって判定された呼び出し関係にしたがって、呼び出し順序が、複数のオープンAPI間に存在しないと判定された場合、第2呼び出し実行モジュール902Cは、複数のオープンAPIにそれぞれ対応する複数のISPサーバへ、呼び出し要求を送信する。
【0137】
図11に示すように、本開示の実施形態によれば、図9に示した装置は、呼び出し関係埋め込み部904を、更に含んでもよい。
【0138】
呼び出し関係にしたがって、呼び出し順序が、複数のオープンAPIに存在すると判定された場合、呼び出し関係埋め込み部904は、複数のオープンAPIの呼び出し関係をサービス・ページに埋め込む。呼び出し関係埋め込み部904は、埋め込み処理済のサービス・ページを、第1呼び出し結果フィードバック部903へ提供する。
【0139】
図12に示すように、本開示の実施形態によれば、図9に示した装置は、第2受信部905、第2ISP呼び出し部906、及び、第2呼び出し結果フィードバック部907を、更に含んでもよい。
【0140】
第2受信部905は、第1オープンAPIの次に、且つ、第1呼び出し結果フィードバック部903によって戻されるサービス・ページに埋め込まれる呼び出し順序にしたがって始動する第2オープンAPIを呼び出すための呼び出し要求を受信する。
【0141】
第2ISP呼び出し部906は、第2受信部 905により受信される呼び出し要求を、第2オープンAPIに対応するISPサーバへ送信する。
【0142】
第2呼び出し結果フィードバック部907は、第2ISP呼び出し部906にしたがって、呼び出し要求に対応する第2オープンAPIに関連するISPサーバから戻されたサービス・ページを受信して、サード・パーティ開発サーバへ送信する。サード・パーティ開発サーバは、サービス・ページを処理して、処理済のサービス・ページを利用者に送る。
【0143】
図13に示すように、本開示の実施形態によれば、図12に示した装置内の第2ISP呼び出し部906は、呼び出し関係解析モジュール906A、及び、呼び出し要求送信モジュール906Bを、更に含んでもよい。
【0144】
呼び出し関係解析モジュール906Aは、第2受信部 905が受信した呼び出し要求を第2オープンAPIに対応するISPサーバへ送信する前に、複数のオープンAPIの呼び出し関係にしたがって、第1オープンAPIを介して、第2オープンAPIを呼び出す必要があるかどうかを判定する。
【0145】
呼び出し関係解析モジュール906Aの解析結果が、第2オープンAPIを呼び出す必要がある場合、呼び出し要求送信モジュール906Bは、呼び出し要求を第2オープンAPIに対応するISPサーバへ送る。
【0146】
したがって、ある実施形態では、図12に示した装置の第2呼び出し結果フィードバック部907は、受信モジュール907A、及び、フィードバック・モジュール907Bを、更に含んでもよい。
【0147】
受信モジュール907Aは、第1オープンAPIに対応するISPサーバから戻される処理済のページを受信する。第1オープンAPIに対応するISPサーバは、第2オープンAPIに対応するISPサーバから戻されたサービス・ページを受信して、自身のサービス・ページに埋め込み、更に、埋め込み処理したページを受信モジュール907Aへ戻す。
【0148】
フィードバック・モジュール907Bは、受信モジュール907Aによって受信されたサービス・ページをサード・パーティ開発サーバへ送り、サービス・ページを処理して、処理済みのページを利用者へ送る。
【0149】
図14に示すように、本開示の実施形態によれば、図9に示した装置は、認証部908を、更に含んでもよい。
【0150】
認証部908は、業務要求を送信する利用者を認証して、呼び出し要求の中で呼び出し要求されるオープンAPIに対応するISPを判定するよう、第1ISP呼び出し部902に指示する。
【0151】
図15に示すように、本開示の実施形態によれば、図14に示した装置の認証部908は、認証モジュール908A、及び、命令モジュール908Bを、更に含んでもよい。
【0152】
認証モジュール908Aは、利用者が設定条件を満たす場合、利用者権限を判定する。設定条件には、利用者がログインできたときに利用者ログイン証明を作成するステップと、利用者ログイン証明が有効であるかどうかを判定するステップを含み、利用者ログイン証明は、利用者が業務要求を送る度に更新される。
【0153】
命令モジュール908Bは、利用者には権限があることを、認証モジュール908Aによって判定された場合、呼び出し要求の中で呼び出し要求されるオープンAPIに対応するISPを判定することを、第1ISP呼び出し部902に対して命令する。
【0154】
図16に示すように、本発明の開示によれば、図9に示した装置の第1ISP呼び出し部902は、ISPサーバ判定モジュール902D、及び、ISPサーバ選択モジュール902Eを、更に含んでもよい。
【0155】
ISPサーバ判定モジュール902Dは、呼び出し要求の中で呼び出し要求されるオープンAPIに対応するISPの数を判定する。
【0156】
ISPサーバ選択モジュール902Eは、ISPサーバ判定モジュール902Dによって判定されたISPが、複数のISPを含む場合、ランダム・ルート・アルゴリズムを用いて、複数のISPサーバのうちの1つを見つけ、見つけたISPサーバに呼び出し要求を送信する。
【0157】
本開示の実施形態によって提供されるオープンAPIに基づくオンライン・ビジネスを実現する装置の機能を実装する専用の方法、及び/または、手段の詳細な説明については、上記のプロセスの該当ステージに詳細に説明してきたため、提供していない。
【0158】
本開示の実施形態が提供するオープンAPIに基づくオンライン・ビジネスを実現する装置は、独立した単独の装置でもよい。種々の用途に、ネットワーク構造の簡略化を考慮して、装置によって実行される機能を、業務実行サーバに統合できる。例えば、装置は、上記機能を実行する部として機能するよう、業務実行サーバに追加することが可能である。その他、本開示の実施形態が提供するオープンAPIに基づくオンライン・ビジネスを実現する装置は、コンピュータによって実行可能な命令により実装できる。当業者であれば、この装置が前述の機能を備え、且つ、本開示の請求項によって保護される限り、上記モジュールを個別に定義、または、分割できることを理解されよう。
【0159】
本開示を、実施形態の方法、装置(システム)、及び、コンピュータによって実行可能な命令のフローチャート、及び/または、ブロック図にしたがって説明した。フローチャート、及び/または、ブロック図、及び/または、ブロックの組み合わせは、コンピュータによって実行可能な命令によって実装できることを理解されたい。このコンピュータによって実行可能な命令は、1つ以上の汎用コンピュータ、1つ以上の専用コンピュータ、1つ以上の組み込み式コンピュータ、または、プログラマブル・データ処理装置の1つ以上の他のプロセッサー上で実装可能であり、これによって、ブロック図の1プロセス、または、複数プロセス、及び/または、1ブロック、または、複数ブロックの所定の機能を実装する装置を、コンピュータ、または、命令を実行するためのプログラマブル・データ処理装置の他のプロセッサーによって作成できる。
【0160】
コンピュータによって実行可能な命令は、何らかの方法で、コンピュータ、または、他のプログラマブル・データ処理装置が動作可能な1つ以上のコンピュータ可読記憶媒体内に記憶できる。コンピュータの1つ以上のコンピュータ可読記憶媒体に記憶された命令は、ブロック図に示された1プロセス、または、複数プロセス、及び/または、1ブロック、または、複数ブロックの所定の機能を実装できる。
【0161】
コンピュータにより実行可能な命令は、1つ以上のコンピュータ、または、1つ以上の他のプログラマブル・データ処理装置内に導入可能であり、これによって、上記のプロセスを実装するために、1つ以上のコンピュータ、または、1つ以上の他のプログラマブル・データ処理装置で一連の操作を実行できる。1つ以上のコンピュータ、または、1つ以上の他のプログラマブル・データ処理装置内で実行される命令は、ブロック図に示された1つ、または、複数のプロセス、及び/または、1つ、または、複数のブロックの所定機の能を実装する工程を提供する。
【0162】
本開示から提供される態様の少なくとも1つの使用によるオンライン・ビジネスを実行する際の方法は、サード・パーティ開発サーバから、利用者の業務要求にしたがって、オープンAPIを呼び出す呼び出し要求を受信するステップと、呼び出し要求の中で呼び出し要求されるオープンAPIに対応するISPサーバを判定するステップと、判定されたISPサーバへ呼び出し要求を送信するステップと、呼び出し要求にしたがって、ISPサーバから戻されたサービス・ページを受信するステップと、サービス・ページを処理して、処理済のサービス・ページを利用者へ送信するため、サービス・ページをサード・パーティ開発サーバへ送信するステップを含むことができる。サービス・ページの処理は、サービス・ページを、業務要求に対応するページに埋め込む処理を含む。このように、サービス・データを、サービス・ページを介して、サード・パーティ開発サーバに戻すほうが、従来の方法のように構造データを直接サード・パーティ開発サーバへ送るよりも、データ・セキュリティの観点から安全である。その他、サード・パーティサーバとISP間のサーバによって、業務の管理機能全てが実装されているため、サード・パーティサーバは、業務ロジックを解析する必要がなく、制御能力が向上する。
【0163】
本開示は、限定された数の例示的実施形態を提供している。だが、本開示は、この例に制限されず、本開示の保護の下、当業者によるいかなる変更も考慮されるであろう。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16