0

現在、ドロップボックスを c# ソフトウェアに追加することを検討しています。https://github.com/SpringSource/spring-net-social-dropboxspring.socialから使用しています。

認証を行うための次のコードがあります

private void authenticateDropbox()
        {
            try
            {
                DropboxServiceProvider dropboxServiceProvider = new DropboxServiceProvider(dropboxAppKey, dropboxAppSecret, AccessLevel.AppFolder);
                //lblStatus.Content = "Getting request Token";

                OAuthToken oauthToken = dropboxServiceProvider.OAuthOperations.FetchRequestTokenAsync(null, null).Result;
                //lblStatus.Content = "Request token retrieved";

                OAuth1Parameters parameters = new OAuth1Parameters();
                string authenticateUrl = dropboxServiceProvider.OAuthOperations.BuildAuthorizeUrl(oauthToken.Value, parameters);
                //lblStatus.Content = "Redirecting user for authentication";
                Process.Start(authenticateUrl);


            }
            catch (AggregateException ex)
            {
                MessageBox.Show("AggregateException: Failed to authenticate\n\n" + ex.Message, "Authentication Error", MessageBoxButton.OK, MessageBoxImage.Error);
            }
            catch (Exception ex)
            {
                MessageBox.Show("General Exception: Failed to authenticate\n\n" + ex.Message, "Authentication Error", MessageBoxButton.OK, MessageBoxImage.Error);
            }

デフォルトのブラウザを正常に読み込んでおり、アプリを許可すると、成功ページが表示されます。同じように、Process.start()メソッドを実行した後、成功ページが表示された後にEnterキーを押して続行するようにユーザーに要求しますが、wpfアプリケーションで実行しているため、ユーザーに要求する必要はありませんボタンを押して、ブラウザからの認証後にプログラムを続行します。

関数にコールバック パラメーターがあるのを見ましたが、FetchRequestTokenAsyncこれを行う方法がわかりません。

基本的に私が欲しいのは、ブラウザが認証が成功したと言ってブラウザを閉じ、C#が認証に成功したことを認識して続行することです。

ご協力いただきありがとうございます。

4

1 に答える 1

2

Process.Start()はコンソール クイック スタートで使用されますが、WPF アプリケーションを使用している場合は、WebBrowserコントロールを使用して認証ページをロードする必要があります。次に、Navigatingイベントに登録して、成功のコールバック ページがいつ呼び出されるかを確認します。

zip パッケージの Windows Phone 7 クイック スタートを確認すると、簡単に WPF に移植できます。 https://github.com/SpringSource/spring-net-social-dropbox/tree/master/examples/Spring.WindowsPhoneQuickStart/Spring.WindowsPhoneQuickStart

于 2012-12-15T07:53:16.890 に答える