インテグレーション (統合)
dRofus Web は、ホストアプリケーションのアプリケーションスペース内に dRofus のデータパネルを表示することができるエンベッディングによる統合を提供します。
dRofus 統合アプリはブラウザコンテキストで実行され、HTMLiframe
を通じて埋め込まれるか、
アプリ内のブラウザウィジェット (例:Android の WebView、C#/WPF の BrowserControl) でで実行されます。
...
response_type: token
client_id: your_client_id
(以前に登録された)scope: dr-std embed
redirect_uri
:your_redirect_uri
(以前に登録された)
オプショナル:
db
およびpr
: データベース名とプロジェクト番号 (例:"01", "02 "など)。省略された場合、ユーザーは認証後にプロジェクトを選択できるようになります。
...
備考:ブラウザ環境では ブラウザ環境ではCORS制限が適用されます。
リダイレクトURIのオリジンを登録しますが、リダイレクトURIとイニシエータのオリジンが異なる場合はお知らせください。
Passing the token
備考:このワークフローは、公開されたトークンがある種の攻撃に対して脆弱であるため、現在は廃止されています。
1. メッセージング
エンベッダーは、以下のパスとハッシュで、次のアプリケーションサーバーを呼び出すことにより、統合されたDrofusにトークンを渡す必要があります。
...
トークンが認証されると、エンベッダーのウィンドウ・オブジェクトにメッセージが送られます。メッセージのペイロードには、DrofusEmbedded
という、
オブジェクトとsuccessful
(成功したフラグ) が含まれます。成功したメッセージは:
{ "DrofusEmbedded": { "success": true } }
2. リダイレクト
エンベッダーは、以下のパスとハッシュで、次のアプリケーションサーバーを呼び出すことにより、統合されたDrofusにトークンを渡す必要があります。
...
#/rooms/search?value={searchValue}
#/rooms/search/{attributeId}?value={searchValue}
部屋を検索します。検索結果が1件の場合、詳細パネルを表示します。複数の場合、セレクタが表示されます。
パラメータ
searchValue
: 検索対象の定義する。
attributeId
: 検索するフィールドを定義するオプションのパラメータ。
#/rooms/room/{roomId}
部屋の詳細パネルを表示する。
パラメータ
roomId
: Drofus 部屋の識別子(整数値)
#/articles/search?value={searchValue}
#/articles/search/{attributeId}?value={searchValue}
アイテムを検索します。検索結果が1つの場合、詳細パネルを表示します。複数の場合はセレクタが表示されます。
パラメータ
searchValue
: 検索対象の定義する。
attributeId
: 検索するフィールドを定義するオプションのパラメータ。
#/articles/article/{articleId}
アイテムの詳細パネルを表示する。
パラメータ
articleId
: Drofus 品の識別子 (整数)
#/occurrences/search?value={searchValue}
#/occurrences/search/{attributeId}?value={searchValue}
オカレンスを検索する。結果が1つの場合、詳細パネルが表示されます。複数の場合はセレクタが表示されます。
パラメータ
searchValue
: 検索対象を定義する。
attributeId
: 検索するフィールドを定義するオプションのパラメータ。
#/occurrences/occurrence/{occurrenceId}
オカレンス詳細パネルを表示する。
パラメータ
occurrenceId
: Drofus オカレンス識別子 (整数)
...