0

Windows Phone Emulator で Windows アプリを作成して、DropBox アカウントと通信し、NuGet ギャラリーの DropNet パッケージを使用しています。

私が参照しているページは次のとおりです。http://dkdevelopment.net/what-im-doing/dropnet/

私が行った手順は次のとおりです。

ステップ 1) クライアントの作成

DropNetClient GlobalClient = new DropNetClient("TOKEN", "SECRET", "testUserName", "testPassword");

userToken と userSecret に何が入るかわかりません。ユーザー名とパスワードをハードコードすることはできません!

ステップ 2) トークンのリクエスト

GlobalClient.GetTokenAsync((userToken) =>
        {
            //Dont really need to do anything with userLogin,
            //DropNet takes care of it for now
        },
        (error) =>
        {
            Deployment.Current.Dispatcher.BeginInvoke(() =>
            {
                MessageBox.Show(error.Message);
            });
        });

ステップ 3) 認証 URL の構築

var url = GlobalClient.BuildAuthorizeUrl("http://dkdevelopment.net/BoxShotLogin.htm");

ステップ 4) ブラウザーを DropBox ログイン ページにリダイレクトします。この後、 DropBoxはログインを許可しますが、次の警告が表示されます。これは、何か問題が発生したことを示しています。よくわかりませんが。

Uri testUri = new Uri(url.ToString());
        WebBrowserTask task = new WebBrowserTask();
        task.Uri = testUri;
        task.Show();

ステップ 5) これは機能しません。GlobalClient.UserLogin.Token および GlobalClient.UserLogin.Secret は設定されません。

GlobalClient.GetAccessTokenAsync((accessToken) =>
        {
            //Store this token for "remember me" function
            GlobalClient.UserLogin.Token = accessToken.Token;
            GlobalClient.UserLogin.Secret = accessToken.Secret;
        },
        (error) =>
        {
            Deployment.Current.Dispatcher.BeginInvoke(() =>
                {
                    MessageBox.Show(error.Message);
                });
        });

誰でもこれを修正する方法を知っていますか?

ありがとう!

4

2 に答える 2

0

私は問題を理解しました。ステップ 2 では、正しい承認 URL を構築するためにリクエスト トークンを保存する必要があり、そのリクエスト トークンを最初のパラメーターとして渡す必要があります。ただし、このようにステートメント lambda に格納しようとすると、格納されません。ここで何が問題なのですか?それがラムダを使用している方法だと思います。

GlobalClient.GetTokenAsync((userToken) => 
{ 
    infoTextBlock.Text = userToken.Token; 
    GlobalClient.UserLogin.Token = userToken.Token; 
}
(error) => 
{ 
});

ありがとう!

于 2012-10-13T20:59:24.363 に答える