Webページのiframeに認証エンドポイントをロードできます。ただし、一部のブラウザでは、iFrame内のログインプロバイダーに送信されるCookieに制限があることに注意してください。通常(Safari、iOS)は、Cookieへの読み取りアクセスのみがあります。これは、セッションCookieがプロバイダーで既に設定されている場合に十分です。
コールバックページ-認証後にドロップボックスから返送されます。認証が行われると、親ページでイベントをトリガーするためにjavascript関数を呼び出す必要があります。
window.parent.AppController.authenticationComplete();
次に、親はiframeを削除し、認証済みとして続行できます。
authenticationCompleted = function() {
// [snipp]
$("iframe#loginwrapper").remove();
}
Cookieの問題が発生する可能性があるため、メインのHTMLページが提供される前に、サーバー側から開始されたすべての認証手順を実行することをお勧めします。次に、アプリが2回読み込まれないことを確認します。これは、多くの認証/IDミドルウェアソフトウェアソリューションの典型的な動作です。
アプリについて言及するとき、それが純粋なWebAppを意味するのか、それともPhonegapなどのフレームワークを使用してハイブリッドアプリで使用できるコントロールがあるのかは不明です。Phonegapなどを使用すると、アプリ内のブラウザー内にブラウザーをロードできます。その場合、ChildBrowserは同じCookie制限で制限されません。
私は最近、iOS用のPhonegapとChildbrowserでこれを機能させる方法についてのチュートリアルを書きました。
このチュートリアルは、OAuth1.0とは多少異なるOAuth2.0の使用に関するものであることに注意してください。