如何使用RestSharp进行Google身份验证?

时间:2012-03-01 08:21:48

标签: c# .net windows-phone-7 restsharp

我已经构建了一个带有“使用谷歌登录”功能的Windows Phone 7应用程序。 Google图书馆与Windows手机运行时兼容,因此我选择了RestSharp。

该应用已成功收到Google的验证码,下一步是交换代码以获取访问令牌和刷新令牌。在这里我遇到了一些问题。

var request = new RestRequest(this.TokenEndPoint, Method.POST);
request.AddParameter("code", code);
request.AddParameter("client_id", this.ClientId);
request.AddParameter("client_secret", this.Secret);
request.AddParameter("redirect_uri", "http://localhost");
request.AddParameter("grant_type", "authorization_code");
client.ExecuteAsync<???>(request, (response) =>
            {
                var passIn = response;
            }); // how to use this method?

我不确定如何使用client.ExecuteAsync<T>方法(或其他任何有用的方法)来获取Google的回复。是否还有其他代码要求我使用此类方法?有人能帮助我吗?

2 个答案:

答案 0 :(得分:3)

您需要绑定UI元素以显示响应。这似乎是你所概述的问题的要点。

如果要在应用程序中显示响应,则应将UI元素绑定到内部数据结构。

显示回复

//在xaml中,例如MainPage.xaml

<TextBox x:Name="myResponseTextBox">

//在相应的MainPage.xaml.cs

client.ExecuteAsync(request, (response) =>
{

   myResponseTextBox.text = response.Content; 

}); 

文本框将在完成后显示回调的结果。

答案 1 :(得分:1)

尝试:

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