Как использовать RestSharp для аутентификации Google? - PullRequest
5 голосов
/ 01 марта 2012

Я создал приложение для Windows Phone 7 с функцией «Войти в Google».Библиотека Google не совместима с Windows Phone Runtime, поэтому я выбрал 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 ]

3 голосов
/ 06 марта 2012

Вам необходимо привязать элемент пользовательского интерфейса для отображения ответа. Похоже, в этом суть проблемы, которую вы изложили.

Если вы хотите отобразить ответ в своем приложении, у вас должен быть элемент пользовательского интерфейса, связанный с внутренней структурой данных.

Отображение ответа

// в xaml, например MainPage.xaml

<TextBox x:Name="myResponseTextBox">

// в соответствующем MainPage.xaml.cs

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

   myResponseTextBox.text = response.Content; 

}); 

В текстовом поле будет отображаться результат обратного вызова , когда завершится.

1 голос
/ 01 марта 2012

попробуй:

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