2

OAuth 和 RestSharp 的新手。

我正在构建一个 Windows Phone 应用程序,使用 RestSharp 来处理所有 OAuth 内容。

private void LoginButton_Tap(object sender, System.Windows.Input.GestureEventArgs e)
    {
        RestClient client = new RestClient(OAuth.Auth.baseurl);
        client.Authenticator = RestSharp.Authenticators.OAuth1Authenticator.ForRequestToken(OAuth.Auth.consumerkey, OAuth.Auth.consumersecret);

        var request = new RestRequest("oauth/request_token", Method.POST);

        client.ExecuteAsync(request, (response) =>
        {
            var resource = response.Content;

            MessageBox.Show(resource);
            webBrowser1.Navigate(new Uri(OAuth.Auth.UAuthorise + "?" + resource + "&oauth_callback=http://bing.com"));
        });

    }

private void webBrowser1_LoadCompleted(object sender, System.Windows.Navigation.NavigationEventArgs e)
        {
            MessageBox.Show(e.Uri.ToString() + " loaded");
        }

我成功获取了请求令牌,然后用户就可以登录服务了。webBrowser1 然后导航到 bing.com(在回调 url 中定义)。我的问题是:我该怎么做才能获得 oauth_token 和 oauth_token_secret?由于 webBrowser1_LoadCompleted 事件处理程序,我可以看到它们,但是如何提取它们以在我的程序中使用它们?

4

1 回答 1

2

Navigating在浏览器控件重定向回回调域/Uri 时处理该事件。
然后,您可以从 Uri 中提取您所追求的值。

于 2012-02-06T22:01:17.053 回答